SQL存储过程返回值在存储过程中获取,获得表的行数 带分组条件
create proc aa
@table varchar(100), --表名
@whereN varchar(1000),--条件
@group varchar(1000), --分组
@Result int output
as
declare @user int
declare @moTable varchar(20)
set @moTable = @Table
declare @sql nvarchar(4000) --定义变量,注意类型
set @sql='select @user = count(*) from [email=[B]'+@moTable+']'+@moTable+'[/email] where [email=[B]'+@whereN]'+@whereN[/email] +' group
by [email=[B]'+@group]'+@group[/email]
--为变量赋值--执行@sql中的语句
exec sp_executesql @sql ,
[email=[B]N'@user]N'@user[/email] int out', --表示@sql中的语句包含了一个输出参数 ,
@user out --和调用存储过程差不多,指定输出参数值
set @Result=@user --输出参数与sql语句中的输出赋值
print @Result --打印
go