SQL日期函数
一、GETDATE()
函数说明:取得当前的日期时间
例子:
SELECT GETDATE() as GETDATE
结果:
GETDATE |
---|
2020-12-01 21:06:35.057 |
二、DATEADD(datepart,number,date)
函数说明:将指定数值添加到指定的日期部分后的日期
参数说明:
date 参数是合法的日期表达式。
number 是您希望添加的间隔数;对于未来的时间,此数是正数,对于过去的时间,此数是负数。
datepart 参数可以是下列的值:
datepart | 缩写 |
---|---|
年 | yy, yyyy |
季度 | qq, q |
月 | mm, m |
年中的日 | dy, y |
日 | dd, d |
周 | wk, ww |
星期 | dw, w |
小时 | hh |
分钟 | mi, n |
秒 | ss, s |
毫秒 | ms |
微妙 | mcs |
纳秒 | ns |
例子:
SELECT DATEADD(mm,4,getdate()) as DATEADD
结果:
DATEADD |
---|
2021-04-01 21:05:01.343 |
三、DATEDIFF(datepart,startdate,enddate)
函数说明:两个日期之间的指定日期部分的间隔
参数说明:startdate 和 enddate 参数是合法的日期表达式。
datepart 参数可以是下列的值:
datepart | 缩写 |
---|---|
年 | yy, yyyy |
季度 | qq, q |
月 | mm, m |
年中的日 | dy, y |
日 | dd, d |
周 | wk, ww |
星期 | dw, w |
小时 | hh |
分钟 | mi, n |
秒 | ss, s |
毫秒 | ms |
微妙 | mcs |
纳秒 | ns |
例子:
SELECT DATEDIFF(day,'2008-12-29','2008-12-30') AS DiffDate
结果:
DiffDate |
---|
1 |
四、DATENAME(datepart,date)
函数说明:返回日期中指定日期部分的字符串形式
参数说明:date是合法的日期表达式
datepart 参数可以是下列的值:
datepart | 缩写 |
---|---|
年 | yy, yyyy |
季度 | qq, q |
月 | mm, m |
年中的日 | dy, y |
日 | dd, d |
周 | wk, ww |
星期 | dw, w |
小时 | hh |
分钟 | mi, n |
秒 | ss, s |
毫秒 | ms |
微妙 | mcs |
纳秒 | ns |
例子:
SELECT DATENAME(DW,GETDATE()) AS DATENAME
结果:
DATENAME |
---|
星期二 |
五、DATEPART(datepart,date):
函数说明:返回代表指定日期的指定日期部分的整数
参数说明:date是合法的日期表达式
datepart 参数可以是下列的值:
datepart | 缩写 |
---|---|
年 | yy, yyyy |
季度 | qq, q |
月 | mm, m |
年中的日 | dy, y |
日 | dd, d |
周 | wk, ww |
星期 | dw, w |
小时 | hh |
分钟 | mi, n |
秒 | ss, s |
毫秒 | ms |
微妙 | mcs |
纳秒 | ns |
例子:
SELECT DATEPART(DY,GETDATE()) AS DATEPART
结果:
DATEPART |
---|
336 |
六、CONVERT(data_type(length),data_to_be_converted,style)
函数说明:把日期转换为新数据类型的通用函数
参数说明:data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。style 规定日期/时间的输出格式。
可以使用的 style 值:
Style ID | Style 格式 |
---|---|
100 或者 0 | mon dd yyyy hh:miAM (或者 PM) |
101 | mm/dd/yy |
102 | yy.mm.dd |
103 | dd/mm/yy |
104 | dd.mm.yy |
105 | dd-mm-yy |
106 | dd mon yy |
107 | Mon dd, yy |
108 | hh:mm:ss |
109 或者 9 | mon dd yyyy hh:mi:ss:mmmAM(或者 PM) |
110 | mm-dd-yy |
111 | yy/mm/dd |
112 | yymmdd |
113 或者 13 | dd mon yyyy hh:mm:ss:mmm(24h) |
114 | hh:mi:ss:mmm(24h) |
120 或者 20 | yyyy-mm-dd hh:mi:ss(24h) |
121 或者 21 | yyyy-mm-dd hh:mi:ss.mmm(24h) |
23 | yyyy-mm-dd |
126 | yyyy-mm-ddThh:mm:ss.mmm(没有空格) |
130 | dd mon yyyy hh:mi:ss:mmmAM |
131 | dd/mm/yy hh:mi:ss:mmmAM |
例子:
SELECT CONVERT(varchar(50),GETDATE(),23) AS [CONVERT]
结果:
CONVERT |
---|
2020-12-01 |