按周,月和日期搜索数据

时间:2016-03-01 05:12:30

标签: android android-sqlite

这是我的桌子。

CREATE TABLE Income (id INTEGER PRIMARY KEY AUTOINCREMENT, type TEXT, amount DOUBLE, sdate DATE, way TEXT,desc TEXT)

之后我想通过sdate列搜索日期排序

这是我的查询,但没有从此查询中输出。

SELECT * from Income where sdate=DATE('now', 'weekday 0', '-7 days')

1 个答案:

答案 0 :(得分:0)

这是一个建议:

将文章更改为TEXT

我尝试过的查询并得到了相应的结果;

SELECT * FROM Income WHERE sdate BETWEEN date('now', '-6 days') AND date('now', 'localtime');

SELECT * FROM Income WHERE sdate >= date('now', 'start of month') AND sdate <= date('now', 'localtime');

您也可以使用静态日期:

SELECT * FROM Income WHERE sdate >= '2016-02-01' and sdate <= '2016-03-01';

同样,this中给出的所有三个都在stackoverflow上回答。

现在,一旦你得到这一天,一周,一个月,你可以使用这个变量通过使用AND子句来生成最终查询。

如果您只想按日期使用排序顺序而不是

SELECT * FROM Income WHERE sdate BETWEEN date('now', '-6 days') AND date('now', 'localtime') ORDER by sdate;

因此,您可以根据需要获得结果。