[英]display multiple output parameters in T-SQL stored procedure
我想在存储过程中显示2个表,每列1列作为我的输出
定义为
create procedure p1
@name varchar(20) OUTPUT,
@company varchar(20) OUTPUT
As
BEGIN
select @name = t1.name from table1 t1;
select @company = t2.company from table2;
END
执行为
declare @name varchar(20), @company varchar(20)
exec dbo.p1 @name = @name, @company = @company
select @name as 'Name', @company as 'Company'
但是,这只显示一行。 我究竟做错了什么?
如果要将这些值显示为1列,2行 - 请使用UNION:
select @name as 'Name'
UNION ALL
select @company
请注意,这两个值将显示在相同的列名称“名称”下
如果您还要显示字符串'Name'和'Company',则必须确保另一列的行顺序:
select 'Name' as Info, 0 as Sort
UNION ALL
select @name, 1
UNION ALL
select 'Company', 2
UNION ALL
select @company, 3
Order by Sort
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.