首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

关于时间函数,问一个简单的有关问题

2012-02-16 
关于时间函数,问一个简单的问题!下面是我的求时间间隔函数,当我改变@time2,出现了我无法解释的错误,具体如

关于时间函数,问一个简单的问题!
下面是我的求时间间隔函数,当我改变@time2,出现了我无法解释的错误,具体如下:

SQL code
declare @time1 datetime,@time2 datetimeselect @time1='2011-01-01',@time2='2011-12-31'select rtrim(right(year(@time2-@time1),2)*1)+'年零'+rtrim(month(@time2-@time1))+'月'/*0年零12月,这个对了!*/godeclare @time1 datetime,@time2 datetimeselect @time1='2011-01-01',@time2='2012-12-31'select rtrim(right(year(@time2-@time1),2)*1)+'年零'+rtrim(month(@time2-@time1))+'月'/*2年零1月,明显不对!*/godeclare @time1 datetime,@time2 datetimeselect @time1='2011-01-01',@time2='2013-12-31'select rtrim(right(year(@time2-@time1),2)*1)+'年零'+rtrim(month(@time2-@time1))+'月'/*3年零1月,也不对*/


[解决办法]
declare @time1 datetime,@time2 datetime

select @time1='2011-01-01',@time2='2016-01-31'

select rtrim(datediff(year,@time1,@time2))+'年零'+rtrim(datediff(month,@time1,@time2)%12)+'月'

热点排行