为什么这个查询在android SQLite中没有返回任何内容
而争议裁决委员会为什么这个查询在android SQLite中没有返回任何内容,android,sqlite,Android,Sqlite,而争议裁决委员会 SELECT * FROM EVENT_total_time WHERE USER_ID = 2 AND LEVEL_SEQUENCE_NUMBER = 1 AND DATETIME( TIMESTAMP ) BETWEEN DATETIME('now','-7 days') AND DATETIME('now') ORDER BY datetime( TIMESTAMP ) ASC 此查询是30秒前运行的,因此。。。日期时间(“现在”)应为2016年
SELECT * FROM EVENT_total_time
WHERE USER_ID = 2
AND LEVEL_SEQUENCE_NUMBER = 1
AND DATETIME( TIMESTAMP ) BETWEEN DATETIME('now','-7 days') AND DATETIME('now')
ORDER BY datetime( TIMESTAMP ) ASC
此查询是30秒前运行的,因此。。。日期时间(“现在”)应为2016年2月15日21:32:00
我运行了这个查询,结果是空的。有人知道为什么吗 但是您的查询不会输出
datetime('now')
。它返回时间戳小于1周的记录内容。那么问题出在哪里呢?是的,您使用的是日期时间间隔。如果只想输出此日期时间,则必须将日期时间(“现在”)设置为onlyDefine“notworking”。如果您编写的查询提供了显示的结果,那么它似乎工作正常。如果现在是2016-02-15 21:32:00
,那么7天前是2016-02-08 21:32:00
。您收到的两个记录的日期都是2016-02-15 21:29:29
,因此这似乎是正确的。我将编辑此DATETIME('now','-7天')中的问题now
作为字符串传递,对吗?我想应该是DATETIME(现在(),'-7天)
?
PRINTING TABLE EVENT_total_time
0 {
_id=56
USER_ID=2
TIMESTAMP=2016-02-15 21:29:29
EPOCH_TIME=1455571769621
NEW_VALUE=3.034
LEVEL_ID=7
LEVEL_SEQUENCE_NUMBER=1
EXTRAS={"old_value":0}
}
1 {
_id=57
USER_ID=2
TIMESTAMP=2016-02-15 21:29:29
EPOCH_TIME=1455571769822
NEW_VALUE=3.219
LEVEL_ID=7
LEVEL_SEQUENCE_NUMBER=1
EXTRAS={"old_value":3.034}
}