Transaction SQL的内建函数 - 2

2. 日期和时间函数

    这里主要讲DATEADD(),DATEDIFF(),DATENAME()和DATEPART()函数。
    DATEADD()函数在向指定日期加上一段时间的基础上,返回新的DATETIME值。它的语法如下:
DATEADD(datepart, number, date)
datepart是规定应向日期的哪一部分返回值的参数,number是用来增加datepart值的参数(如果指定的值不是整数,则将废弃该值的小数部分),date是返回DATETIME或SMALLDATETIME值或日期格式字符串的表达式。
例2.1:
Use pubs
go
select dateadd(day, 21, pubdate) AS timeframe
from titles
go
上述代码打印出pubs数据库中标题的时间结构列表。此事件结构表示当前发布日期加上21天。
    DATEDIFF()函数返回跨两个指定日期的日期和时间的边界,语法结构如下:
DATEDIFF(datepart, startdate, enddate)
参数datepart用来规定应在哪一部分计算差额,startdate是计算的开始日期,enddate是计算的终止日期。需要注意的是,startdate用enddate去减,如果startdate比enddate晚,则返回负值。当结果超出整数范围时,DATEDIFF()函数将产生错误。
例2.2:
use pubs
go
select datediff(day, pubdate, getdate()) AS no_of_days
from titles
go
上述代码确定在pubs数据库中标题发布日期和当前日期之间的天数。
 
    DATENAME()函数返回代表指定日期的指定日期部分的字符串,语法如下:
DATENAME(datepart, date)
datepart是指定返回的日期部分的参数。
例2.3:
select datename(month, getdate()) AS 'Month Name'
上述代码从getdate()函数返回的日期中提取出月份名称。
 
    DATEPART()函数和DATENAME()函数功能类似,将DATETIME值的指定部分(年,季度,天,小时等)生成为整数值或者ASCII字符串。
例2.4(DATENAME()和DATEPART()对比):
select datepart(month, getdate())
 
select datename(month, getdate())
 
上述代码结果分别为"9" 和"09" (9月份实验数据)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值