DATEPART DATENAME

DATEPART 返回指定日期时间表达式的指定 datepart 作为数值。

DATENAME 返回一个字符串,表示指定日期的指定 datepart。在实践中,DATENAME 主要用于获取月份名称或星期几。

还有一些速记函数可以获取日期时间表达式的年,月或日,其行为类似于 DATEPART 及其各自的 datepart 单位。

句法:

DATEPART ( datepart , datetime_expr )
DATENAME ( datepart , datetime_expr )
DAY ( datetime_expr )
MONTH ( datetime_expr )
YEAR ( datetime_expr )

例子:

DECLARE @now DATETIME2 = GETDATE();
SELECT @now                       --2016-07-21 15:05:33.8370000
SELECT DATEPART(YEAR, @now)       --2016
SELECT DATEPART(QUARTER, @now)    --3
SELECT DATEPART(WEEK, @now)       --30
SELECT DATEPART(HOUR, @now)       --15
SELECT DATEPART(MINUTE, @now)     --5
SELECT DATEPART(SECOND, @now)     --33
-- Differences between DATEPART and DATENAME:
SELECT DATEPART(MONTH, @now)      --7
SELECT DATENAME(MONTH, @now)      --July
SELECT DATEPART(WEEKDAY, @now)    --5
SELECT DATENAME(WEEKDAY, @now)    --Thursday
--shorthand functions
SELECT DAY(@now)    --21
SELECT MONTH(@now)  --7
SELECT YEAR(@now)   --2016

注意:DATEPARTDATENAME 也接受 datepart 参数中的缩写。通常不鼓励使用这些缩写,因为它们可能令人困惑(m vs miww vs w 等)。