Sql Server类型转换,Sql Server函数

CONVERT(数据类型, 表达式, 样式)    --样式可以没有

CAST(表达式 as 数据类型)

select StudentName + '的出生日期是:' + cast(DateOfBirth as varchar(50)) as '学生信息'
from Students;
select StudentName + '的出生日期是:' + convert(varchar(50), DateOfBirth, 103) as '学生信息'
from Students;
select StudentName + '的出生日期是:' + convert(varchar(50), DateOfBirth, 108) as '学生信息'
from Students;

DateOfBirth是DateTime类型,不转换会报错

------------------函数-----------------

计算日期差:datediff(日期格式,日期1, 日期2)

向下取整:Floor()

样例:

declare @days int, @BirthDay dateTime, @Age int
select @BirthDay = DateOfBirth from Students where StudentId = 100002
print '生日:' + convert(varchar(50), @BirthDay)
select @days = datediff(DAYOFYEAR,@BirthDay, getdate())
print '活了' + Convert(varchar(10), @days) + '天'
select @Age = FLOOR(@days / 365)
print '活了' + Convert(varchar(10), @Age) + '年'


结果:
    生日:02  7 1990 12:00AM
    活了12211天
    活了33年

你可能感兴趣的:(sql,server,数据库,sqlserver,sql)