首页 > 代码库 > 一个sql日期转换问题,不是很明白
一个sql日期转换问题,不是很明白
select space(8) as fsrq into #test0 where 0 = 1
declare @fsrq char(8)
set @fsrq=‘20141111‘
while convert(char(8), @fsrq, 112) <= ‘20141211‘
begin
insert #test0 (fsrq) select convert(char(8), @fsrq, 112)
select @fsrq = dateadd(day, 1, @fsrq)
end
select * from #test0
这样一段代码,进入了死循环,把代码改为下面的这种,也是跳不出。
select space(8) as fsrq into #test0 where 0 = 1 declare @fsrq char(8) set @fsrq=‘20141111‘ while @fsrq <= ‘20141211‘ begin insert #test0 (fsrq) select @fsrq select @fsrq = dateadd(day, 1, @fsrq) select @fsrq = convert(char(8),@fsrq,112) end select * from #test0
事实上第一种只要把char(8)换成datetime类型就一点问题都没有。
我是错在哪里了,请指点一二啊
一个sql日期转换问题,不是很明白
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。