• 【收集】sql查询统计,周,月,年


    昨天
    select * from tb where datediff(day, 时间字段 ,getdate()) = 1
    今天
    select * from tb where datediff(day, 时间字段 ,getdate()) = 0
    本周
    select * from tb where datediff(week, 时间字段 ,getdate()) = 0
    上周
    select * from tb where datediff(week, 时间字段 ,getdate()) = 1
    下周
    select * from tb where datediff(week, 时间字段 ,getdate()) = -1
     
    上月
    Select * From TableName Where DateDiff(month, DateTimCol, GetDate()) = 1
    本月
    Select * From TableName Where DateDiff(month, DateTimCol, GetDate()) = 0
    下月
    Select * From TableName Where DateDiff(month, GetDate(), DateTimCol ) = -1
    本年
    Select * From TableName Where DateDiff(year, GetDate(), DateTimCol ) = 0
     
    昨天:dateadd(day,-1,getdate())
    明天:dateadd(day,1,getdate())
    上月:month(dateadd(month, -1, getdate()))
    本月:month(getdate())
    下月:month(dateadd(month, 1, getdate()))
     
    昨天 
    Select * From TableName Where DateDiff(dd, DateTimCol, GetDate()) = 1
    明天
    Select * From TableName Where DateDiff(dd, GetDate(), DateTimCol) = -1
    最近七天
    Select * From TableName Where DateDiff(dd, DateTimCol, GetDate()) <= 7
    随后七天
     
    当前年
    select  提出日期, datepart(year,getdate()) as  当前年 from 供方资料表
    前一年
    select  提出日期, datepart(year,getdate())-1 as  当前年 from 供方资料表
    后一年
    select  提出日期, datepart(year,getdate())+1 as  当前年 from 供方资料表
     

    SQL 日期函数
    1.   当前系统日期、时间
         select getdate()  

    2. dateadd   在向指定日期加上一段时间的基础上,返回新的 datetime 值
        例如:向日期加上2天
        select dateadd(day,2,'2004-10-15′)   –返回:2004-10-17 00:00:00.000

    3. datediff 返回跨两个指定日期的日期和时间边界数。
        select datediff(day,'2004-09-01′,'2004-09-18′)    –返回:17

    4. datepart 返回代表指定日期的指定日期部分的整数。
       SELECT DATEPART(month, '2004-10-15′)   –返回 10

    5. datename 返回代表指定日期的指定日期部分的字符串
        SELECT datename(weekday, '2004-10-15′)   –返回:星期五

    6. day(), month(),year() –可以与datepart对照一下

    select 当前日期=convert(varchar(10),getdate(),120)
    ,当前时间=convert(varchar(8),getdate(),114)

    select datename(dw,'2004-10-15′)

    select 本年第多少周=datename(week,'2004-10-15′)
           ,今天是周几=datename(weekday,'2004-10-15′)

    举例:
    1.GetDate() 用于sql server :select GetDate()

    2.DateDiff('s','2005-07-20′,'2005-7-25 22:56:32′)返回值为 514592 秒
    DateDiff('d','2005-07-20′,'2005-7-25 22:56:32′)返回值为 5 天

    3.DatePart('w','2005-7-25 22:56:32′)返回值为 2 即星期一(周日为1,周六为7)
    DatePart('d','2005-7-25 22:56:32′)返回值为 25即25号
    DatePart('y','2005-7-25 22:56:32′)返回值为 206即这一年中第206天
    DatePart('yyyy','2005-7-25 22:56:32′)返回值为 2005即2005年

  • 相关阅读:
    0705. Design HashSet (E)
    VMware简单使用
    Git笔记
    初识MyBatis
    数据库连接池配置 testOnBorrow
    Redis list操作命令
    文件/目录对比:diff命令
    可用于区块链的共识算法
    分布式一致性算法,你确定不了解一下?
    Jmeter文件下载测试
  • 原文地址:https://www.cnblogs.com/zzyrunning/p/6145202.html
Copyright © 2020-2023  润新知