DATEADD、DATEDIFF、DATEPART、DATENAME
SELECT DATEADD(MONTH,3,'2019-03-12') --2019-06-12 00:00:00.000
SELECT DATEADD(DAY,5,'2019-09-11') --2019-09-16 00:00:00.000
SELECT DATEDIFF(MONTH,'2019-07-10','2019-09-10') --2
SELECT DATEDIFF(DAY,'2019-09-10','2019-09-13') --3
SELECT DATEPART(YYYY,'2019-09-13') --2019
SELECT DATEPART(Y,'2019-09-13') --256(2019年的第256天)
SELECT DATEPART(M,'2019-09-13') --9
SELECT DATEPART(D,'2019-09-13') --13
SELECT DATEPART(W,'2019-09-13') --6(星期五)
SELECT DATENAME(WEEKDAY,'2019-09-13') --星期五
SELECT CONVERT(VARCHAR(10),GETDATE(),120) --2019-09-13
SELECT CONVERT(VARCHAR(8),GETDATE(),114) --11:32:59
SELECT CONVERT(VARCHAR(30),GETDATE(),9) --09 13 2019 11:34:07:900AM
SELECT DATENAME(YEAR,GETDATE()) --2019
SELECT DATENAME(MONTH,GETDATE()) --09
SELECT DATENAME(DAY,GETDATE()) --13
SELECT DATENAME(WEEKDAY,GETDATE()) --星期五
SELECT DATENAME(WEEK,GETDATE()) --37
SELECT DATENAME(HOUR,GETDATE()) --11
SELECT DATENAME(MINUTE,GETDATE()) --38
SELECT DATENAME(SECOND,GETDATE()) --32
常用格式
SELECT CONVERT(VARCHAR(12),GETDATE(),101) --09/13/2019
SELECT CONVERT(VARCHAR(12),GETDATE(),102) --2019.09.13
SELECT CONVERT(VARCHAR(12),GETDATE(),103) --13/09/2019
SELECT CONVERT(VARCHAR(12),GETDATE(),104) --13.09.2019
SELECT CONVERT(VARCHAR(12),GETDATE(),105) --13-09-2019
SELECT CONVERT(VARCHAR(12),GETDATE(),106) --13 09 2019
SELECT CONVERT(VARCHAR(12),GETDATE(),107) --09 13, 201
SELECT CONVERT(VARCHAR(12),GETDATE(),108) --11:48:55
SELECT CONVERT(VARCHAR(12),GETDATE(),109) --09 13 2019 1
SELECT CONVERT(VARCHAR(12),GETDATE(),110) --09-13-2019
SELECT CONVERT(VARCHAR(12),GETDATE(),111) --2019/09/13
SELECT CONVERT(VARCHAR(12),GETDATE(),112) --20190913
SELECT CONVERT(VARCHAR(12),GETDATE(),113) --13 09 2019 1
SELECT CONVERT(VARCHAR(12),GETDATE(),114) --11:51:52:133
SELECT REPLACE(REPLACE(REPLACE(CONVERT(VARCHAR,GETDATE(),120),'-',''),' ',''),':','')--20190913114215
常用查询
--当天,如:2019-09-13 10:42:58.633
SELECT GETDATE()
--本月第一天,如:2019-09-01 00:00:00.000
SELECT DATEADD(MM,DATEDIFF(MM,0,GETDATE()),0)
--本月最后一天,如:2019-09-30 23:59:59.997
SELECT DATEADD(MS,-3,DATEADD(MM,DATEDIFF(MM,0,GETDATE())+1,0))
--本年第一天,如:2019-01-01 00:00:00.000
SELECT DATEADD(YY,DATEDIFF(YY,0,GETDATE()),0)
--本年最后一天,如:2019-12-31 23:59:59.997
SELECT DATEADD(MS,-3,DATEADD(YY,DATEDIFF(YY,0,GETDATE())+1,0))
--本周星期一,如:2019-09-09 00:00:00.000
SELECT DATEADD(WK,DATEDIFF(WK,0,GETDATE()),0)
--本月第一个星期一,如:2019-09-02 00:00:00.000
SELECT DATEADD(WK,DATEDIFF(WK,0,DATEADD(DD,6-DATEPART(DAY,GETDATE()),GETDATE())),0)
--去年第一天,如:2018-01-01 00:00:00.000
SELECT DATEADD(YY,DATEDIFF(YY,0,GETDATE())-1,0)
--去年最后一天,如:2018-12-31 23:59:59.997
SELECT DATEADD(MS,-3,DATEADD(YY,DATEDIFF(YY,0,GETDATE()),0))
--本季度第一天,如:2019-07-01 00:00:00.000
SELECT DATEADD(QQ,DATEDIFF(QQ,0,GETDATE()),0)
--上个月第一天,如:2019-08-01 00:00:00.000
SELECT DATEADD(MM,DATEDIFF(MM,0,GETDATE())-1,0)
--上个月最后一天,如:2019-08-31 00:00:00.000
SELECT DATEADD(MM,DATEDIFF(MM,0,GETDATE()),-1)
--上个月最后一天,精确到小时分钟,如:2019-08-31 23:59:59.997
SELECT DATEADD(MS,-3,DATEADD(MM,DATEDIFF(MM,0,GETDATE()),0))
SELECT 本年第几周=DATENAME(WEEK,GETDATE()),今天是星期几=DATENAME(WEEKDAY,GETDATE())