sql存储过程 如何用IF来判断变量表内数据是否存在

如:declare@Aasvarchar(max)select@A='selectcount(*)from'+@变量表+'where姓名='+@姓名exec(@A)--如... 如:declare @A as varchar(max)
select @A='select count(*) from '+ @变量表 + ' where 姓名='+@姓名

exec(@A)--如果显示为1,那表示找到数据,0为没有数据
那如何用IF来进行判断呢?求解!
展开
 我来答
baiynijecym
推荐于2016-05-06 · TA获得超过1841个赞
知道大有可为答主
回答量:1411
采纳率:66%
帮助的人:1159万
展开全部
可以定义一个变量接收值

declare @A as varchar(max),@count integer

select @A='select @count = count(*) from '+ @变量表 + ' where 姓名='+@姓名
exec(@A)
if @count > 0
...
追问
照你方法,还是不行啊.错误提示:要申明变量 @Count
追答
SQL SERVER中上面方法不行,参考sp_executesql ,类似如下

declare @sql nvarchar(2000)
declare @cou int
declare @id varchar(20)
set @id='1'
set @sql='select @count=count(*) from emp where id=@id'
exec sp_executesql @sql, N'@count int out,@id varchar(20)', @cou out
,@id
print @cou
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式