SQLite日期 - 从今天开始查找事件

时间:2012-06-02 00:10:02

标签: android sqlite

我想从SQLite数据库中检索一个事件列表,这些事件的start_time“今天”。 start_time包含时间戳,例如像这样1338613200000

我试过了:

SELECT * FROM events WHERE date(start_time, 'unixepoch')=date('now')

不起作用......

我在MySQL中用这样的声明实现了同样的目的:

SELECT * FROM events WHERE DATE(start_time)=CURDATE();

修改 这是我的时间戳的问题。他们有三个零太多

3 个答案:

答案 0 :(得分:1)

Java使用自Unix时代以来的毫秒,而我猜SQLite使用秒。

在查询数据库之前将System.currentTimeMillis()除以1000。

答案 1 :(得分:0)

您可以尝试这样的事情:

SELECT * FROM events 
WHERE datetime(start_time,'unixepoch', 'localtime')
BETWEEN DATE('now') AND DATE('now', '+1 day')

here

中查看更多详情

答案 2 :(得分:0)

尝试

Calendar c= Calendar.getInstance();
long l=c.getTimeInMillis();

并执行以下操作:

SELECT * FROM events WHERE start_time=l;

看看是否有效。