zoukankan      html  css  js  c++  java
  • sql查询时间常用格式

    https://blog.csdn.net/puddingpp/article/details/78889386

    以上是 其他处理方式

     --获取yyyy-mm-dd

    CONVERT(char(10), GetDate(),126)

    --请在下面的代码中选择你需要的。

    --注意,将里面的  GETDATE() 代换成你要转化的日期变量。
     
    --最常用的
    Select CONVERT(varchar(100), GETDATE(), 120) -- 2006-05-16 10:57:49
    Select CONVERT(varchar(100), GETDATE(), 121) -- 2006-05-16 10:57:49.700
    Select CONVERT(varchar(100), GETDATE(), 108)  -- 10:57:49
    Select CONVERT(varchar(100), GETDATE(), 114)  -- 10:57:49:547
     
    select CONVERT(varchar(7), GETDATE(), 120)   ---2019-01
    --其它日期格式化式样
    --日期格式化函数
    Select CONVERT(varchar(100), GETDATE(), 0)  -- 05 16 2006 10:57AM
    Select CONVERT(varchar(100), GETDATE(), 1)  -- 05/16/06
    Select CONVERT(varchar(100), GETDATE(), 2)  -- 06.05.16
    Select CONVERT(varchar(100), GETDATE(), 3)  -- 16/05/06
    Select CONVERT(varchar(100), GETDATE(), 4)  -- 16.05.06
    Select CONVERT(varchar(100), GETDATE(), 5)  -- 16-05-06
    Select CONVERT(varchar(100), GETDATE(), 6)  -- 16 05 06
    Select CONVERT(varchar(100), GETDATE(), 7)  -- 05 16, 06
    Select CONVERT(varchar(100), GETDATE(), 8)  -- 10:57:46
    Select CONVERT(varchar(100), GETDATE(), 9  -- 05 16 2006 10:57:46:827AM
    Select CONVERT(varchar(100), GETDATE(), 10  -- 05-16-06
    Select CONVERT(varchar(100), GETDATE(), 11  -- 06/05/16
    Select CONVERT(varchar(100), GETDATE(), 12  -- 060516
    Select CONVERT(varchar(100), GETDATE(), 13  -- 16 05 2006 10:57:46:937
    Select CONVERT(varchar(100), GETDATE(), 14  -- 10:57:46:967
    Select CONVERT(varchar(100), GETDATE(), 20  -- 2006-05-16 10:57:47
    Select CONVERT(varchar(100), GETDATE(), 21  -- 2006-05-16 10:57:47.157
    Select CONVERT(varchar(100), GETDATE(), 22  -- 05/16/06 10:57:47 AM
    Select CONVERT(varchar(100), GETDATE(), 23  -- 2006-05-16
    Select CONVERT(varchar(100), GETDATE(), 24  -- 10:57:47
    Select CONVERT(varchar(100), GETDATE(), 25  -- 2006-05-16 10:57:47.250
    Select CONVERT(varchar(100), GETDATE(), 100  -- 05 16 2006 10:57AM
    Select CONVERT(varchar(100), GETDATE(), 101  -- 05/16/2006
    Select CONVERT(varchar(100), GETDATE(), 102  -- 2006.05.16
    Select CONVERT(varchar(100), GETDATE(), 103  -- 16/05/2006
    Select CONVERT(varchar(100), GETDATE(), 104  -- 16.05.2006
    Select CONVERT(varchar(100), GETDATE(), 105  -- 16-05-2006
    Select CONVERT(varchar(100), GETDATE(), 106  -- 16 05 2006
    Select CONVERT(varchar(100), GETDATE(), 107  -- 05 16, 2006
    Select CONVERT(varchar(100), GETDATE(), 108  -- 10:57:49
    Select CONVERT(varchar(100), GETDATE(), 109  -- 05 16 2006 10:57:49:437AM
    Select CONVERT(varchar(100), GETDATE(), 110  -- 05-16-2006
    Select CONVERT(varchar(100), GETDATE(), 111  -- 2006/05/16
    Select CONVERT(varchar(100), GETDATE(), 112  -- 20060516
    Select CONVERT(varchar(100), GETDATE(), 113  -- 16 05 2006 10:57:49:513
    Select CONVERT(varchar(100), GETDATE(), 114  -- 10:57:49:547
    Select CONVERT(varchar(100), GETDATE(), 120  -- 2006-05-16 10:57:49
    Select CONVERT(varchar(100), GETDATE(), 121  -- 2006-05-16 10:57:49.700
    Select CONVERT(varchar(100), GETDATE(), 126  -- 2006-05-16T10:57:49.827
    Select CONVERT(varchar(100), GETDATE(), 130  -- 18 ???? ?????? 1427 10:57:49:907AM
    Select CONVERT(varchar(100), GETDATE(), 131  -- 18/04/1427 10:57:49:920AM
     
    通过系统函数操作时间
     
    ---求相差天数
    select datediff(day,'2004-01-01',getdate())
     
    --1.一个月第一天的
    SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0)
     
    --2.本周的星期一
    SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)
     
    select dateadd(wk,datediff(wk,0,getdate()),6)
    --3.一年的第一天
    SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0)
     
    --4.季度的第一天
    SELECT DATEADD(qq, DATEDIFF(qq,0,getdate()), 0)
     
    --5.当天的半夜
    SELECT DATEADD(dd, DATEDIFF(dd,0,getdate()), 0)
     
    --6.上个月的最后一天
    SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate()), 0))
     
    --7.去年的最后一天
    SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate()), 0))
     
    --8.本月的最后一天
    SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0))
     
    --9.本年的最后一天
    SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate())+1, 0))
     
    --10.本月的第一个星期一
    select DATEADD(wk,
    DATEDIFF(wk,0,dateadd(dd,6-datepart(day,getdate()),getdate())), 0)
     
    --查询本周注册人数
    select count(*) from [user]
    where datediff(week,create_day-1,getdate())=0
     
    --上周注册人数
    select count(*) from [user]
    where datediff(week,create_day-1,getdate())=1
     
     
    --本月注册人数
    select count(*) from [user]
    where datediff(month,create_day,getdate())=0
     
    --上月注册人数
    select count(*) from [user]
    where datediff(month,create_day,getdate())=1
     
    --如果要效率,这样写查询
     
    --查询本周注册人数
    select count(*) from [user]
    where create_day>=dateadd(day,2-datepart(weekday,getdate()),convert(varchar,getdate(),112))
    and create_day<dateadd(day,9-datepart(weekday,getdate()),convert(varchar,getdate(),112))
     
    --上周注册人数
    select count(*) from [user]
    where create_day>=dateadd(day,-5-datepart(weekday,getdate()),convert(varchar,getdate(),112))
    and create_day<dateadd(day,2-datepart(weekday,getdate()),convert(varchar,getdate(),112))
     
     
    --本月注册人数
    select count(*) from [user]
    where create_day>=dateadd(day,1-day(getdate()),convert(varchar,getdate(),112))
    and create_day<dateadd(month,1,dateadd(day,1-day(getdate()),convert(varchar,getdate(),112)))
     
    --上月注册人数
    select count(*) from [user]
    where create_day>=dateadd(month,-1,dateadd(day,1-day(getdate()),convert(varchar,getdate(),112)))
    and create_day<dateadd(day,1-day(getdate()),convert(varchar,getdate(),112))
     
    --本周
    select count(*) from User
    where datediff(dd,create_day,getdate()) <= datepart(dw,getdate())
     
    --上周
    select count(*) from User
    where datediff(dd,create_day,(getdate() - datepart(dw,getdate()))) <= 7
     
    --本月
    select count(*) from User
    where datepart(mm,create_day) = datepart(mm,getdate())
    --上月
    select count(*) from User
    where datepart(mm,create_day) = datepart(mm,getdate()) - 1
    --本周
    select count(*) from [User]
    where datediff(dd,create_day,getdate()) <= datepart(dw,getdate())
     
    --上周
    select count(*) from [User]
    where datediff(dd,create_day,(getdate() - datepart(dw,getdate()))) <= 7
     
    --本月
    select count(*) from [User]
    where datepart(mm,create_day) = datepart(mm,getdate())
    --上月
    select count(*) from [User]
    where datepart(mm,create_day) = datepart(mm,getdate()) - 1
    学习
    month(create_day)=month(getdate())本月
    month(create_day)=month(getdate())-1 上月
     
    补充 查询今日所有的
    SELECT * from feedback WHERE (DATEDIFF(d,fedtime,GETDATE())=0) ORDER BY fedid DESC

    获取当前月份下一个月的年月日
     SELECT CONVERT(varchar(7),DateAdd(m,+1, GETDATE()), 120)
     
  • 相关阅读:
    SqlServer 查看数据库中所有存储过程
    SqlServer 查看数据库中所有视图
    SqlServer 查询表的详细信息
    SqlServer 遍历修改字段长度
    net core 操作Redis
    Tuning SharePoint Workflow Engine
    Open With Explorer
    Download language packs for SharePoint 2013
    Change Maximum Size For SharePoint List Template when Saving
    Six ways to store settings in SharePoint
  • 原文地址:https://www.cnblogs.com/shanshuiYiCheng/p/10280692.html
Copyright © 2011-2022 走看看