1

Androidで次のコードを使用して現在の日時を取得しています

Date currentDateTime = new Date();

そして、それをsqliteテーブルに次のように保存します

currentDateTime.ToString()

SO テーブル内の値はそのように保存されます

"Tue Sep 11 20:32:39 IST 2012"
"Thu Sep 13 17:23:38 IST 2012"
"Thu Sep 13 17:34:38 IST 2012"
"Thu Sep 13 20:21:58 IST 2012"

ここで、それらを sqlite で降順で並べ替える必要があります。

select datetime(datecolumn) from table order by datetime(datecolumn) desc;

しかし、フィールドでdatetime(column)を実行すると、日付フィールドのすべての行でnullが表示されます

明らかに、sqlite 側でデータの不一致があります。しかし、それを修正する方法がわかりません - これを読むことができるように sqlite 側でクエリを変更する方法はありますか? または、JAVA コードを変更して、SQLite で読み取り可能な形式でデータを挿入する必要がありますか。

毎時データを扱っているので、時間も必要です。

4

2 に答える 2

4

私は使うだろう

currentDateTime.getTime())

その値を保存します-データベースに必要なスペースが少なくなり、sqliteのソートがはるかに高速になると思います

于 2012-10-05T05:47:41.160 に答える
1

SQLite で日付として認識される形式のリストについては、日付と時刻の関数を参照してください。

データベース フィールドを 1 ミリ秒単位の値より読みやすくする場合は、文字列を としてフォーマットしますYYYY-MM-DD HH:MM:SS

于 2012-10-05T07:41:39.117 に答える