sql语句学习中三
datepart()
函数是一个非常有弹性的函数,因为它能够让您通过设置datepart参数来返回日期函数表达式date
的年份,月份,日数,小时,分钟,秒等等特定的日期时间函数
year 年份
quarter季度
month月份
day日数
hour小时
weekday工作日
minute分钟
second秒
datepart(yy,getdate())=year()
datepart(mm,getdate())=month()
datepart(dd,getdate())=day()
datepart均返回int数据类型
datename()
函数与datepart类似,通过设置datepart参数返回日期时间表达式getdate()的年份,月份,日数,小时,等等日期时间
,两者区别是datepart()返回是int,datename()返回是nvarchar数据类型
datename(dw,getdate())返回星期几
dateadd()
计算出某个日期时间值加上特定的单位时间区时间后,所得的日期时间是什么,dateadd(datepart,number,date)datepart
指定日期时间表达式那个部分加上number指定的数值
加上一百天后的日期
select dateadd(dd,100,'08/22/2006');
加上一年
select dateadd(yy,1,'08/22/2006');
datediff()
计算出两个时间表达式之间的差距,datediff(datepart,startdate,enddate)datepart指定以那个部分比较
日期相差
select datediff(dd,'01/01/1990','04/01/1998')
在sql2005中,想显示的转变数据类型,必须借助于cast()和convert()两大转换函数
cast(expression as data_type)
convert(data_tye,expression[,style])
其中expression是要转换的数据类型的表达式,data_type是要转换后的数据类型
declare @vString char(3);
declare @vNumber money;
set @vString='123';
set @vNumber=257.34;
--使用cast()函数转换数据类型
select cast(@vString as money)+ @vNumber;
--使用convert()函数转换数据类型
select convert(money,@vString)+ @vNumber;