赞
踩
在本教程中,将学习如何使用SQL Server DATEPART()函数来提取日期的一部分。
SQL Server DATEPART()函数简介
DATEPART()函数返回一个整数,它是日期的一部分,例如日,月和年。
以下是DATEPART()函数的语法:
DATEPART ( date_part , input_date )
DATEPART()函数有两个参数:
date_part是要提取的日期的一部分(参见下表中的有效日期部分)。
input_date是提取日期部分的日期。
date_part
缩写形式
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
microsecond
mcs
nanosecond
ns
TZoffset
tz
ISO_WEEK
isowk, isoww
SQL Server DATEPART()示例
下面来看一些使用DATEPART()函数的例子。
1. 将DATEPART()函数与变量一起使用
这个示例中将使用DATEPART()函数提取日期值的各个部分存储在变量中:
DECLARE @d DATETIME = '2022-03-04 15:30:18';
SELECT
DATEPART(year, @d) year,
DATEPART(quarter, @d) quarter,
DATEPART(month, @d) month,
DATEPART(day, @d) day,
DATEPART(hour, @d) hour,
DATEPART(minute, @d) minute,
DATEPART(second, @d) second;
执行上面查询语句,得到以下结果:
2. 使用DATEPART()函数与表列示例
下面将使用示例数据库中的sales.orders和sales.order_items进行演示。
以下示例使用DATEPART()函数按年,季度,月和日查询总销售额。
SELECT DATEPART(year, shipped_date) [year],
DATEPART(quarter, shipped_date) [quarter],
DATEPART(month, shipped_date) [month],
DATEPART(day, shipped_date) [day],
SUM(quantity * list_price) gross_sales
FROM sales.orders o
INNER JOIN sales.order_items i ON i.order_id = o.order_id
WHERE shipped_date IS NOT NULL
GROUP BY DATEPART(year, shipped_date),
DATEPART(quarter, shipped_date),
DATEPART(month, shipped_date),
DATEPART(day, shipped_date)
ORDER BY [year] DESC, [quarter], [month], [day];
执行上面查询语句,得到以下结果:
在此示例中,使用DATEPART()函数从shipped_date列中的值中提取年,季度,月和日。 在GROUP BY子句中,我们按日期部分汇总了总销售额(quantity * list_price)。
请注意,可以在SELECT,WHERE,HAVING,GROUP BY和ORDER BY子句中使用DATEPART()函数。
在本教程中,学习了如何使用SQL Server DATEPART()从日期中提取日期部分。
¥ 我要打赏
纠错/补充
收藏
加QQ群啦,易百教程官方技术学习群
注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。