Sqlserver日期函数datepart

本文介绍了SQL Server中用于获取日期特定部分的DATEPART函数及其缩写形式,并展示了如何使用这些函数来提取日期的不同组件,如年份、月份和星期等。此外,还提供了按年度等条件对数据进行分组统计的方法,以及设置一周开始日期的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

返回代表指定日期的指定日期部分的整数。

看例子:

select datepart(year,getdate())
select datepart(quarter,getdate())
select datepart(month,getdate())
select datepart(dayofyear,getdate())
select datepart(day,getdate())
select datepart(week,getdate())
select datepart(weekday,getdate())
select datepart(Hour,getdate())
select datepart(minute,getdate())
select datepart(second,getdate())
select datepart(millisecond,getdate())
分别返回当前日期的年,季度,月,本年第几天,天,本年第几个星期,星期中的第几天,小时,分钟,秒,毫秒。

当然,也可以用缩写:

select datepart(yyyy,getdate())
select datepart(qq,getdate())
select datepart(mm,getdate())
select datepart(dy,getdate())
select datepart(dd,getdate())
select datepart(wk,getdate())
select datepart(dw,getdate())
select datepart(hh,getdate())
select datepart(mi,getdate())
select datepart(ss,getdate())
select datepart(ms,getdate())
这个函数非常有用,对日期字段进行分组统计,十分简单高效:

例如:按年度统计信息:

select datepart(year,日期) as rq,sum(金额) as je from 表
group by datepart(year,日期)
order by datepart(year,日期)
另外,sqlserver为了方便,还专门提供了year、month、day三个函数。

关于DATEFIRST

主要与返回星期的第几天有关,默认设定是星期日为一周的第一天,我们也可以更改:

设定周一为一周的第一天:

SET DATEFIRST 1
SELECT @@DATEFIRST AS '1st Day', DATEPART(dw, GETDATE()) AS 'Today'

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值