SQLite
 sql >> Datenbank >  >> RDS >> SQLite

Daten in SQLite-Datenbank sortieren?

In SQLite gibt es nicht wirklich einen Datumstyp. Sie können Datumsangaben als Zeichenfolgen speichern, indem Sie eines ihrer vordefinierten Formate verwenden. Weitere Informationen finden Sie unter http://www.sqlite.org/lang_datefunc.html.

Eine Zeitzeichenfolge kann eines der folgenden Formate haben:

YYYY-MM-DD
YYYY-MM-DD HH:MM
YYYY-MM-DD HH:MM:SS
YYYY-MM-DD HH:MM:SS.SSS
YYYY-MM-DDTHH:MM
YYYY-MM-DDTHH:MM:SS
YYYY-MM-DDTHH:MM:SS.SSS
HH:MM
HH:MM:SS
HH:MM:SS.SSS
now
DDDDDDDDDD

Sie müssen sie in YYYY-MM-DD speichern, dann können Sie sie nach Asc-Limit 1 sortieren, um das älteste Datum zu erhalten. Also anstelle von

Column_Date
------------
Nov-07-2012
Nov-21-2012
Nov-25-2012
Oct-25-2012
Oct-24-2102

Sie müssen sie stattdessen so speichern

Column_Date
------------
2012-11-07
2012-11-21
2012-11-25
2012-10-25
2012-10-24

Schließlich lesen Sie die Zeilen, falls vorhanden

Cursor oldestDateCursor = db.query("DateTableName", null, null, null, null, null, "date_column ASC LIMIT 1");
if (oldestDateCursor.moveToFirst())
{
    String date = oldestDateCursor.getColumnName(oldestDateCursor.getColumnIndex("date_column"));
}
oldestDateCursor.close();