zoukankan      html  css  js  c++  java
  • sqlite 获取当天当周当月等数据

    ----昨天
    select * fromwhere Time>=datetime('now','start of day','-1 day') and Time<datetime('now','start of day','+0 day')
    
    ----当天
    select * fromwhere Time>=datetime('now','start of day','+0 day') and Time<datetime('now','start of day','+1 day')
    
    ----当周
    select  * fromwhere Time>=datetime('now','start of day','-7 day','weekday 1') AND Time<datetime('now','start of day','+0 day','weekday 1')
    
    ----当月
    select * fromwhere Time>=datetime('now','start of month','+0 month','-0 day') AND Time < datetime('now','start of month','+1 month','0 day')
    
    ----上月
    select * fromwhere Time>=datetime('now','start of month','-1 month','-0 day') AND Time <datetime('now','start of month','+0 month','-1 day')

     上面的“当周”和“当月”的获取方法,知识取最近7(30)天,并非本周(本月)。

    下面是经过测试可以用的方法:

    --本月
    select *
    from UserConsume
    where rowTime between datetime('now','start of month','+1 second') and 
    datetime('now','start of month','+1 month','-1 second') 
    
    
    --本周
    select *
    from UserConsume
    where rowTime between datetime(date(datetime('now',strftime('-%w day','now'))),'+1 second') 
    and datetime(date(datetime('now',(6 - strftime('%w day','now'))||' day','1 day')),'-1 second') 

    ----上面本周的计算再次出错,再次修正:

    --start 
    select datetime("now","start of day","-6 day","weekday 1")

    --end
    select datetime(datetime("now","start of day","weekday 0"),"start of day","+1 day")

  • 相关阅读:
    数据清洗
    JAVA多线程三种实现方式
    QT-4.8.6 编译配置过程
    qt 编译问题总结
    [转载]tslib1.4与Qt4.8.6的交叉编译与移植
    STC12C5A60S2 @ 22.0184Mhz 精确延时
    STC12C5A60S2 双串口通信
    C# Bitmap 复制
    TextMate2 最新版下载及源码编译过程
    mac系统 PHP Nginx环境变量修改
  • 原文地址:https://www.cnblogs.com/hougelou/p/4259223.html
Copyright © 2011-2022 走看看