1. 程式人生 > >sql server DATEPART() 函式的使用

sql server DATEPART() 函式的使用

datepart() 函式是用來返回 指定日期時間的指定日期部分的整數。返回型別為:int 。語法:DATEPART(datepart,date)

其中date是日期、時間。part指其中的一部分。所以這個函式的意思就是取日期中的一部分。

函式的第一引數 datepart是指定應返回的日期部分,引數說明如下表:

日期部分

縮寫

說明

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

返回毫秒數

通過sql語句驗證結果:

--分別取出日期'2018-11-03 14:13:12.583' 中的 年/季度/月/日/小時/分鐘/秒/毫秒
SELECT DATEPART(yy,'2018-11-03 14:13:12.583')       --結果:2018
SELECT DATEPART(year,'2018-11-03 14:13:12.583')     --結果:2018
SELECT DATEPART(qq,'2018-11-03 14:13:12.583')       --結果:4     第四季度
SELECT DATEPART(quarter,'2018-11-03 14:13:12.583')  --結果:4
SELECT DATEPART(mm,'2018-11-03 14:13:12.583')       --結果:11    第11月份
SELECT DATEPART(month,'2018-11-03 14:13:12.583')    --結果:11
SELECT DATEPART(dd,'2018-11-03 14:13:12.583')       --結果:3     當月第3天
SELECT DATEPART(day,'2018-11-03 14:13:12.583')      --結果:3
SELECT DATEPART(hh,'2018-11-03 14:13:12.583')       --結果:14    當天下午2點
SELECT DATEPART(mi,'2018-11-03 14:13:12.583')       --結果:13    
SELECT DATEPART(ss,'2018-11-03 14:13:12.583')       --結果:12
SELECT DATEPART(ms,'2018-11-03 14:13:12.583')       --結果:583


--分別取出日期'2018-11-03 14:13:12.583' 是一年中的第幾天/第幾周/星期幾
SELECT DATEPART(dayofyear,'2018-11-03 14:13:12')    --結果:307   2018年的第307天
SELECT DATEPART(week,'2018-11-03 14:13:12')         --結果:44    2018年的第44周
SELECT DATEPART(weekday,'2018-11-03 14:13:12')      --結果:7     7代表星期六   1代表星期日
--直接取得星期幾漢字的方法DateName()函式:
select DateName(weekDay,getdate())                  --結果星期六

注意:SQL Server 將 0 解釋為 01/01/1900

如果給第二個引數傳為0  則按照 01/01/1900 處理。

SELECT DATEPART(mm, 0), DATEPART(dd, 0), DATEPART(yy, 0)

結果是:  1    1    1900