看代码
declare @iid int
select @iid=111
select top 1 @iid=isnull(IID,0) from
YYGL_PCDMX where IID=0
print @iid
上面的情况,如果iid=0没有记录,则@iid会取111,为了避免这个问题
1、在查询前,初始化为0
2、查找完成后,再次判断
修改后,如下
例一
declare @iid int
select @iid=0
select top 1 @iid=isnull(IID,0) from
YYGL_PCDMX where IID=0
select @iid=isnull(@iid,0)
print @iid
例二
select @zh=‘‘
select top 1 @zh= ZH
from SBGL_ZHSZ
where
ZH not in(select ZH from RYGL_PBRL where RQ=@rq_ord)
order by ZHXH
asc
select @zh=ISNULL(@zh,‘‘)
sqlserver中top 1 赋值的问题,布布扣,bubuko.com
原文地址:http://www.cnblogs.com/kuailewangzi1212/p/3709506.html