首页 文章

查询最后一天,上周,上个月SQLite

提问于
浏览
12

我的Android SQLite DB中有这个表:

CREATE TABLE statistics (subject TEXT, hits INTEGER, fails INTEGER, date DATE)

date 字段中,每个寄存器中存储 datetime('now', 'localtime') .

现在我必须查询最后一天,上周和上个月的寄存器以显示一些统计信息 . 我一直在尝试这样的事情

SELECT Timestamp, datetime('now', '-1 week') FROM statistics WHERE TimeStamp < datetime('now', '-1 week')

还有这个

SELECT * FROM statistics WHERE date BETWEEN datetime('now', localtime') AND datetime ( 'now', '-1 month')

并不起作用:(

我该怎么做?

我可以通过简单地在虚拟设备模拟器中转发日期来检查查询是否正常吗?

谢谢!

5 回答

  • 0

    我找到了这个解决方案 . 我希望这个对你有用 .

    最后一天:

    SELECT * FROM statistics WHERE date BETWEEN datetime('now', 'start of day') AND datetime('now', 'localtime');
    

    上周:

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

    上个月:

    SELECT * FROM statistics WHERE date BETWEEN datetime('now', 'start of month') AND datetime('now', 'localtime');
    
  • 26

    这段代码可以让你上个月

    SELECT * 
    FROM statistics 
    WHERE date >= date('now','start of month','-1 month')
    AND date < date('now','start of month')
    
  • 0

    这段代码将带来前一周的记录

    SELECT  * FROM  order_master
    WHERE strftime('%Y-%m-%d',om_date) >= date('now','-14 days') AND 
    strftime('%Y-%m-%d',om_date)<=date('now') order by om_date LIMIT 6
    
  • 4
    SELECT 
    max(date(date, 'weekday 0', '-7 day')) WeekStart,
    max(date(date, 'weekday 0', '-1 day')) WeekEnd,date 
    FROM table;
    
  • 0

    SELECT * FROM statistics WHERE date> = date('now','start of month',' - 1 months')和date <date('now','start of month')

    在更多的月份,是“月”,而不像其他人说的那样 .

相关问题