SqlServer 中用declare 一个varchar类型的 要赋初值吗?
答案:2 悬赏:20 手机版
解决时间 2021-04-02 03:57
- 提问者网友:最爱你的唇
- 2021-04-01 10:45
SqlServer 中用declare 一个varchar类型的 要赋初值吗?
最佳答案
- 五星知识达人网友:逃夭
- 2021-04-01 11:13
你自己说的对,是应该赋值
如下
declare @number int=12436
declare @rc varchar(5) =''--赋一个空值就行,不影响最后结果
declare @midnumber int
declare @ss int=0
declare @i int=1
while(@i<6)
begin
set @midnumber=@number%10
set @number=@number/10
set @rc=@rc+CONVERT(varchar(1),@midnumber)
set @i+=1
--为什么不输出
end
print @rc追问可以说一下为什么要赋值?追答不赋值就是null
null+任何东西都为假,所以无输出
单独执行下边这个
select null+1
结果就是null,所以print时就什么都没有
如下
declare @number int=12436
declare @rc varchar(5) =''--赋一个空值就行,不影响最后结果
declare @midnumber int
declare @ss int=0
declare @i int=1
while(@i<6)
begin
set @midnumber=@number%10
set @number=@number/10
set @rc=@rc+CONVERT(varchar(1),@midnumber)
set @i+=1
--为什么不输出
end
print @rc追问可以说一下为什么要赋值?追答不赋值就是null
null+任何东西都为假,所以无输出
单独执行下边这个
select null+1
结果就是null,所以print时就什么都没有
全部回答
- 1楼网友:山河有幸埋战骨
- 2021-04-01 11:29
是的! 这里可以给个空字符串 declare @rc varchar(5)=''
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯