Android / Java Sqlite: Wie bekomme ich maximale Datetime?

8

Unten ist der Schnappschuss von dem, was ich als Anfrage von sqlite db bekommen habe.

Nachdem ich gegoogelt und einige Fragen herumgelesen habe, habe ich erfahren, dass es nicht möglich ist, maximale Datumswerte mit Aggregatfunktionen wie max() zu erhalten, da sqlite nicht viele Datentypen unterstützt, sondern den Datentyp als text .

Also, ich habe diese Daten in List oder bei java gebracht. Wie konnte ich nun die maximale Datetime von dieser Liste bekommen?

  

Gibt es in Java ein direktes Konstrukt für dieses Format? Oder haben wir etwas auf SQL-Ebene, das ich nicht finden konnte.

    
Prateek 12.12.2012, 10:50
quelle

4 Antworten

16

Texte können in SQLite verglichen, sortiert und sortiert werden.

Ihr Format scheint JJJJ-MM-TT hh: mm: ss zu sein. Zum Glück, bestellen Sie dieses Format in Reihenfolge nach Datum.

nur

%Vor%

oder

%Vor%

(oder etwas, nicht ganz sicher für das zweite)

    
njzk2 12.12.2012, 11:03
quelle
2

Wenn Sie den Typ des Datetime-Feldtexts festlegen, können Sie die folgende Abfrage ausführen aber datetime muss yyyy-mm-dd hh:mm:ss

sein %Vor%     
USKMobility 30.12.2013 11:32
quelle
0

Ein gängiger Ansatz besteht darin, die konvertierten Daten so lange zu speichern.

Verwenden Sie date.getTime() , um lange von Ihrer Date-Instanz und Date date = new Date(timestamp); zu erhalten, um ein Datumsobjekt von Ihrem Zeitstempel zu erhalten.

Sobald Sie eine lange in Ihrer Datenbank haben, können Sie jede Bestellung / Vergleich durchführen, die Sie wollen.

    
fedepaol 12.12.2012 11:03
quelle
0

Um Max-Wert aus einer Menge von Zeit des Typs (String) zu retrollen, müssen wir einige Verkettungen unter Verwendung einer Unterzeichenfolge durchführen. Unter Verwendung dieser Abfrage kann max oder min Time mit sql lite

ermittelt werden %Vor%     
Samjin Mahadevan 11.10.2016 10:41
quelle

Tags und Links