Vinzenz Mai: SQLite3 nach Datum sortieren, zusammenfassen von querys

Beitrag lesen

Hallo,

ich möchte gerne Datumswerte aus einer Spalte des Typs DATE sortieren, was aber nicht so klappt wie ich mir das vorstelle.

SQLite kennt keinen Datentyp DATE.

Folgendermaßen bin ich vorgegangen:
CREATE TABLE test(id INTEGER PRIMARY KEY,datum DATE);

INSERT INTO test VALUES(NULL,"28.06.1998")

ungeeignetes Datumsformat. Warum nimmst Du nicht YYYY-MM-TT (wobei - für ein beliebiges, aber festes Trennzeichen steht, am besten der Bindestrich :-)

SELECT datum FROM test ORDER BY "datum"
liefert:
01.03.1995
12.01.2000
12.12.2009
13.01.2007
27.09.1998
28.06.1998

Wie kann man die Daten korrekt mithilfe eines Querys sortieren?

Wenn SQLite keine Stringfunktionen hat, gar nicht. Schreibe sie wie von mir empfohlen, und Sortieren ist kein Problem.

Und wenn ich schonmal beim Fragen bin, wie kann ich Querys zusammenfassen? Wie oben beschrieben habe ich die sechs Datumswerte getrennt hintereinander eingetippt. Gibt es eine Mehthode um soetwas zusammenzufassen?

Wenn diese Werte nicht in einer Tabelle stehen, gar nicht, siehe INSERT-Syntax: entweder INSERT eines einzelnen Datensatzes oder mehrere Datensätze über INSERT ... SELECT. Du siehst am Syntaxdiagramm, dass es nicht wie MySQL eine kommaseparierte Liste von Wertlisten erlaubt, sondern genau eine Wertliste für einen Datensatz. Das ist normal. Alternativ zu *einer* Wertliste für *einen* Datensatz kannst Du ein SELECT-Statement nehmen. In diesem Fall werden soviele Datensätze eingefügt, wie das SELECT-Statement liefert. Das können auch 0 Datensätze sein, was kein Fehler ist.

Freundliche Grüße

Vinzenz