[英]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.