Hab mal wieder ein Brett vorm Kopf ...
Ich versuche eine Abfrage mit einem Datumsbereich zu erstellen und bekomme dabei kein Ergebnis. Weder über die SQL im Programm noch über SQLite-Konsole.
Die Abfragen:
Code: Alles auswählen
1. sqlite> SELECT DATE(Datum), Art, Betrag FROM tBuchung WHERE ART = 0;
2. sqlite> SELECT DATE(Datum), Art, Betrag FROM tBuchung WHERE Datum >= '2015-01-01';
3. sqlite> SELECT DATE(Datum), Art, Betrag FROM tBuchung;
2015-09-07|0|100
2015-09-07|1|40
2015-08-31|0|2000
2015-09-01|11|100
2015-09-01|10|100
2015-09-02|11|40
2015-09-02|10|40
2015-09-06|1|55
Abfrage 1 liefert ein Ergebnis; Abfrage 2 nicht, d.h. eine leere Menge und es gibt auch keinen Fehlercode.
Ich habe das Datum schon unteschiedlich geschrieben '2015-01-01' "2015-01-01" DATE( '2015-01-01') .. aber immer ohne Ergebnis.
Erstaunlicherweise liefert diese SQL eine Ergebnis im Programm
Code: Alles auswählen
//'SELECT TOTAL(Betrag) FROM tBuchung WHERE '
// + 'Datum >= (:FIRST) AND '
// + 'Datum <= (:LAST) AND '
// + 'Art = 0';
//SqlQueryB.ParamByName('FIRST').AsDateTime := MFirst;
//SqlQueryB.ParamByName('LAST').AsDateTime := MLast;
Hat jemand dafür eine Erklärung bzw. kann mir jemand erklären, wie der Datumsstring aufgebaut sein muss, damit die Abfrage direkt verwendet werden kann?
Danke