如何控制存储过程的返回值/表


ALTER PROC SP_SampleInner
AS
SELECT COUNT(*) FROM TB_Whatever

其他过程

ALTER RPROC SP_SampleOuter
AS
DECLARE @count int
EXEC @count = SP_SampleInner
IF @count > 0
BEGIN
SELECT 1
END
ELSE
BEGIN
SELECT 0
END

我想要的是SP_SampleOuter返回多于一个表,因为EXEC SP_SampleInner(我认为)。我如何控制返回的表/值?

试试这个方法:

ALTER PROC SP_SampleOuter
AS
DECLARE @count int
EXEC @count = SP_SampleInner
IF @count > 0
BEGIN
SELECT @count as Ctr,1
END
ELSE
BEGIN
SELECT @count as Ctr,0
END

只需添加count变量作为返回的第一个字段

使用输出变量返回计数。

最新更新