Anmelden

View Full Version : Datum in Query



heini
29-09-06, 08:10
Hallo Zusammen,

kleine Frage:

wir haben ein Query mit mehreren Datumsabfragen : :

--> Datum1 EQ 20060929

das wird jeden Tag entsprechend geändert - Datum vom Vortag.

Gibt es einen Parameter, mit dem man diese Datumfrage so gestalten kann, daß immer das Datum vom Vortag ausgewählt wird. --> Datum1 EQ "datum vom Vortag"

Danke für die Hilfe
Heinz

Fuerchau
29-09-06, 08:14
Dazu bedarf es mehrerer Schritte in berechneten Feldern:

vortagd = date(days(current_date) - 1)
vortagn = year(vortagd)*10000 + month(vortagn)*100+date(vortagd)

Satzauswahl:
Datum1 eq vortagn

Dies ist sicherlich nicht die einzige Möglichkeit.

heini
30-09-06, 08:43
moin

geht das nicht einfacher ?

B.Hauser
30-09-06, 10:10
Hallo,

nein es geht nicht einfacher.
Du musst schon 2 Hilfsfelder definieren, da Dein Vergleichs-Datum ein numerischer Wert ist.
1. Zunächst muss das Datum des Vortags ermittelt werden.
(Die Syntax von Baldur ist allerdings nicht korrekt, das ist SQL und nicht Query400!)
Die Query400-Syntax lautet:
current(date) - 1 day

Und bei SQL-Syntax ist es auch nicht notwendig ein echtes Datum über Days und Date zu konvertieren, sondern auch hier ist es möglich direkt einen Tag abzuziehen:
Current_Date - 1 Day

2. Aus diesem Datum muss jetzt ein numerisches Datum aufbereitet werden, in der Form wie Du es benötigst.
(Intern ist ein Datum immer als Scalinger Number, Anzahl der Tage vom 1.1.0001 gespeichert)

Das zweite Feld verwendest Du dann bei Sätze auswählen, anstatt des hardcodierten Vortages.

Birgitta