sql中的日期函数

1.GETDATE() :取得当前日期时间
例:
--使用getdate()方法获得当前日期
select GETDATE()
print getdate()
2.DATEADD (datepart , number, date ),计算增加以后的日期。
参数date为待计算的日期;参数number为增量;参数datepart为计量单位,可选值见备注。
注:Datepart可选值
取值 别名 说明
year yy,yyyy 年份
quarter qq,q 季度
month mm,m 月份
dayofyear dy,y 当年度的第几天
day dd,d 日
week wk,ww 当年度的第几周
weekday dw,w 星期几
hour hh 小时
minute mi,n 分
second ss,s 秒
millisecond ms 毫秒

例:
--计算日期date的3天后的日期
DATEADD(DAY, 3,date)
--计算日期date的8个月之前的日期
DATEADD(MONTH ,-8,date)
--(入职一年以上的员工发1000$),入职日期+1年<当前时间
update Employee set EmpSalary=EmpSalary+1000
where DATEADD(year,1,EmpInTime)<getdate()
注意:Sql2005中只有DateTime类型,2008中有date、datetime、datetime2 等类型。
3.DATEDIFF ( datepart , startdate , enddate ) :计算两个日期之间的差额。
datepart 为计量单位,可取值参考DateAdd。
例:
--统计不同入学年数的学生个数:
select DateDiff(year,sInDate,getdate()),count(*) from student Group by DateDiff(year,sInDate,getdate())
--输出所有数据中通话时间最长的5条记录
select  top 5*,通话时长=DATEDIFF(second,StartDateTime,EndDateTime)
from CallRecords
order by 通话时长 desc,CallerNumber desc
4.DATEPART (datepart,date):返回一个日期的特定部分
Month()、year()、day()来代替
例:
--统计学生的生日年份个数:
select DatePart(year,sBirthday),count(*)
from student
group by DatePart(year, sBirthday)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值