函式
確定性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 年
selectdatepart(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
sqlserver 日期函式
一直都在用oracle,對sqlserver中的一些函式很不熟悉,在工作用偶爾會用到,貼在這裡,便於以後查詢 取出資料庫欄位中datetime列的日期部分 1 select datename year,getdate datename month,getdate datename day,getda...
SQL Server 日期函式
獲取當前系統日期時間。取決於 1 精度要求 2 utc時間還是系統時間 3 要不要帶時區 與 getdate 和 getutcdate 比較而言,sysdatetime 和 sysutcdatetime 的秒的小數部分精度更高。sysdatetimeoffset 包含系統時區偏移量。sysdatet...
sql server日期時間函式
2.dateadd 在向指定日期加上一段時間的基礎上,返回新的 datetime 值 例如 向日期加上2天 select dateadd day,2,2004 10 15 返回 2004 10 17 00 00 00.000 3.datediff 返回跨兩個指定日期的日期和時間邊界數。select ...