1

我在 Android 中使用以下代码来获取当前日期时间

Date currentDateTime = new Date();

并将其存储在 sqlite 表中

currentDateTime.ToString()

所以在表中的值是这样存储的

"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"

现在我需要按 desc 顺序在 sqlite 中对它们进行排序,即

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

但是当我在字段上执行 datetime(column) 时,它显示我在日期字段上的所有行都为空

显然在 sqlite 端存在数据不匹配。但我不知道如何解决它 - 有没有办法我仍然可以更改 sqlite 端的查询以便能够读取它?还是我必须更改 JAVA 代码并以 sqlite 可读格式插入数据。

我也需要时间,因为我正在处理每小时数据。

4

2 回答 2

4

我会用

currentDateTime.getTime())

并存储该值 - 数据库中所需的空间更少,我假设对 sqlite 进行排序要快得多

于 2012-10-05T05:47:41.160 回答
1

有关SQLite 识别为日期的格式列表,请参阅日期和时间函数。

如果您希望数据库字段比单个毫秒值更具可读性,请将字符串格式化为YYYY-MM-DD HH:MM:SS.

于 2012-10-05T07:41:39.117 回答