Datename() 函数与DatePart()函数

本文深入解析了SQL中的DatePart()和DateName()函数,详细介绍了这两个函数的语法、返回类型及应用实例,帮助读者理解如何获取日期的不同部分,如年、月、日等,并展示了在不同SQL Server版本中的表现差异。

Datename() 函数与DatePart()函数

Datepart():返回代表指定日期的指定日期部分的整数
语法:Datepart(datepart,date) 返回类型:int

DateName():返回代表指定日期的指定日期部分的字符串

语法:DateName(datepart,date) 返回类型:nvarchar

日期部分 缩写 备注
year yy, yyyy 年
quarter qq, q 季度
month mm, m 月
dayofyear dy, y 一年中的第几天
day dd, d 日
week wk, ww 一年中的第几周
weekday dw日期部分返回对应于星期中的某天的数,例如:Sunday =1 星期几
Hour hh 小时
minute mi, n 分钟
second ss, s 秒
millisecond ms 毫秒

select GETDATE() as ‘当前日期时间’,
DateName(year,GetDate())+‘-’+DateName(month,GetDate())+‘-’+DateName(day,GetDate()) as ‘当前日期’,
DateName(quarter,GetDate()) as ‘第几季度’,
DateName(week,GetDate()) as ‘一年中的第几周’,
DateName(DAYOFYEAR,GetDate()) as ‘一年中的第几天’,
DateName(year,GetDate()) as ‘年’,
DateName(month,GetDate()) as ‘月’,
DateName(day,GetDate()) as ‘日’,
DateName(hour,GetDate()) as ‘时’,
DateName(minute,GetDate()) as ‘分’,
DateName(second,GetDate()) as ‘秒’,
DateName(MILLISECOND,GetDate()) as ‘豪秒’,
DateName(WEEKDAY,GetDate()) as ‘星期几’

select GETDATE() as ‘当前日期时间’,
DatePart(year,GetDate())+‘-’+DatePart(month,GetDate())+‘-’+DatePart(day,GetDate()) as ‘当前日期’,
DatePart(quarter,GetDate()) as ‘第几季度’,
DatePart(week,GetDate()) as ‘一年中的第几周’,
DatePart(DAYOFYEAR,GetDate()) as ‘一年中的第几天’,
DatePart(year,GetDate()) as ‘年’,
DatePart(month,GetDate()) as ‘月’,
DatePart(day,GetDate()) as ‘日’,
DatePart(hour,GetDate()) as ‘时’,
DatePart(minute,GetDate()) as ‘分’,
DatePart(second,GetDate()) as ‘秒’,
DatePart(MILLISECOND,GetDate()) as ‘豪秒’,
DatePart(WEEKDAY,GetDate()) as ‘星期几’

注意:

1)因为DatePart返回类型为int类型,所以当前日期的结果是做了运算的结果

2)

在多数SQL SERVER 英文版本中(以及部分繁体版),

SELECT DATENAME(month, getdate()) 得到 字符串类型的 January ;

而在简体中文版中:SELECT DATENAME(month, getdate()) 得到 字符串类型的 01

而SELECT DATEPART(month,getdate())则在所有版本中都得到 int类型的 1

3)

SELECT DATENAME(weekday, getdate()) 得到“星期X”

SELECT DATEPART(weekday, getdate()) 得到星期对应的数字,一(1)/二(2)/三(3).。。。。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值