SQL DATEPART

总结:在本教程中,您将学习如何使用 SQL DATEPART() 函数从给定日期中返回指定日期部分,例如年、月和日。

DATEPART() 函数返回一个整数,表示给定日期中指定的日期部分。

以下为 DATEPART() 函数的语法

DATEPART(datepart, date)
Code language: SQL (Structured Query Language) (sql)

请注意,DATEPART() 函数并非 SQL 标准函数,只有 SQL Server 支持。

参数

datepart

datepart 是日期参数的特定部分。下表列出所有有效 datepart

datepart
年份、yyyy、yy
季度、qq、q
月份、mm、m
一年中的天数、dy、y
日期、dd、d
星期、wk、ww
星期几、dw
小时、hh
分钟、n
秒、ss、s
毫秒、ms
微秒、mcs
纳秒、ns
时区偏移、tz

日期

date 是一个日期文本或表达式,从中提取日期的一部分。

返回

DATEPART() 函数返回一个整数,其单位由 datepart 参数表示。

示例

以下示例从一个日期中提取年份

SELECT DATEPART(year, '2018-07-21 15:30:20.05') year;
Code language: SQL (Structured Query Language) (sql)

输出为

year
-----------
2018
Code language: SQL (Structured Query Language) (sql)

以下示例演示如何从一个日期中提取季度

SELECT DATEPART(quarter, '2018-07-21 15:30:20.05') quarter
Code language: SQL (Structured Query Language) (sql)

结果为

quarter
-----------
3
Code language: SQL (Structured Query Language) (sql)

要从一个日期中提取月份,请使用以下语句

SELECT DATEPART(month, '2018-07-21 15:30:20.05') month
Code language: SQL (Structured Query Language) (sql)

结果如下

month
-----------
7
Code language: SQL (Structured Query Language) (sql)

要从一个日期中返回一年中的天数,请将 dayofyear 传递给 DATEPART() 函数的第一个参数

SELECT DATEPART(dayofyear, '2018-07-21 15:30:20.05') dayofyear
Code language: SQL (Structured Query Language) (sql)

以下显示输出

dayofyear
-----------
202
Code language: SQL (Structured Query Language) (sql)

要获取给定日期的日期,请使用以下示例

SELECT DATEPART(day, '2018-07-21 15:30:20.05') day
Code language: SQL (Structured Query Language) (sql)

输出如下

dayofyear
-----------
21
Code language: SQL (Structured Query Language) (sql)

要从一个日期中提取星期,请使用以下语句

SELECT DATEPART(week, '2018-07-21 15:30:20.05') week
Code language: SQL (Structured Query Language) (sql)

以下是输出

week
-----------
29
Code language: SQL (Structured Query Language) (sql)

以下示例返回一个日期的星期几

SELECT DATEPART(weekday, '2018-07-21 15:30:20.05') weekday
Code language: SQL (Structured Query Language) (sql)

该语句返回以下输出

weekday
-----------
7
Code language: SQL (Structured Query Language) (sql)

要从一个日期中获取时间信息,例如一个小时、一分和一秒,请使用以下语句

SELECT DATEPART(hour, '2018-07-21 15:30:20.05') hour,
    DATEPART(minute, '2018-07-21 15:30:20.05') minute,
    DATEPART(second, '2018-07-21 15:30:20.05') second;
Code language: SQL (Structured Query Language) (sql)

输出为

hour        minute      second
----------- ----------- -----------
15          30          20
Code language: SQL (Structured Query Language) (sql)

在本教程中,您已学习如何使用 SQL DATEPART() 函数从给定日期中提取日期的部分。

本教程对您有帮助吗?