日期:2014-05-16  浏览次数:20666 次

请教一个数据类型
我成功的把生日模式 转化成了 age 模式   但我想把这个age 变成比如说  20.7岁  20.3  20.5岁啊 这样子    请大神帮忙,感激不尽
------解决方案--------------------
select  cast(datediff(mm,生日,getdate())*1.0/12 as decimal(5,1))  from 表
------解决方案--------------------
还是建议你不要用 20.1岁、30.5岁这样的写法,建议使用20岁8个月,这个比较常见,医院都是这样用的。
------解决方案--------------------
用CAST 函数或者用CONVERT函数。
------解决方案--------------------
下面这个可以实现多少岁几个月的显示

select CONVERT(varchar(3), datediff(mm,'1990-01-20',getdate())/12)+'岁'
+ CONVERT(varchar(3), datediff(mm,'1990-01-20',getdate()) % 12)+'个月'