返回日记本

sqlserver日期处理函数

函数确定性






DATEADD

具有确定性



DATEDIFF

具有确定性



DATENAME

不具有确定性



DATEPART

除了用作 DATEPART (dw, date) 外都具有确定性。dw 是工作日的日期部分,取决于由设置每周第一天的 SET DATEFIRST 所设置的值。



DAY

具有确定性



GETDATE

不具有确定性



GETUTCDATE

不具有确定性



MONTH

具有确定性(截取月份)



YEAR

具有确定性(截取年)



 

 

DATEDIFF 函数 [日期和时间]

功能 返回两个日期之间的间隔。

语法 DATEDIFF ( date-part, date-expression-1, date-expression-2 )

date-part :year | quarter | month | week | day | hour | minute | second | millisecond

参数 date-part    指定要测量其间隔的日期部分。(可以理解为要返回数值的单位)

用法

例:根据生日计算年龄

DATEDIFF ( date-part, birthday,getdate())

 

比较有代表性的用法例子如下:

SELECT datediff( hour, '4:00AM', '5:50AM' )下面的语句返回 102:

SELECT datediff( month, '1987/05/02', '1995/11/15' )下面的语句返回 0:

SELECT datediff( day, '00:00', '23:59' )下面的语句返回 4:

SELECT datediff( day,   '1999/07/19 00:00',   '1999/07/23 23:59' )下面的语句返回 0:

SELECT datediff( month, '1999/07/19', '1999/07/23' )下面的语句返回 1:

SELECT datediff( month, '1999/07/19', '1999/08/23' )

 

对于更小的时间单位存在溢出值:

milliseconds    24 天

seconds    68 年

minutes    4083 年

 

*******************************************************************************

SELECT DATEPART(month, GETDATE()) AS 'Month Number'

日期部分缩写






year

yy, yyyy



quarter

qq, q



month

mm, m



dayofyear

dy, y



day

dd, d



week

wk, ww



weekday

dw



Hour

hh



minute

mi, n



second

ss, s



millisecond

ms


原文章浏览量:1062

原文章分类:数据库

原文链接:https://www.iteye.com/blog/lizhiyu-741066