因为这不可能像:
select * from (call my_stored_procedure(params));
上述陈述是否有其他选择?
答案 0 :(得分:1)
过程可以返回多个结果集,每个结果集都有自己的架构。它不适合在SELECT语句中使用。
用户定义的功能可以是一个选项。这是一个例子:
CREATE FUNCTION CubicVolume
-- Input dimensions in centimeters
(@CubeLength decimal(4,1), @CubeWidth decimal(4,1),@CubeHeight decimal(4,1) )
RETURNS decimal(12,3) -- Cubic Centimeters.
AS
BEGIN
RETURN ( @CubeLength * @CubeWidth * @CubeHeight )
END
此链接上的详情:http://msdn.microsoft.com/en-us/library/aa175085%28SQL.80%29.aspx
答案 1 :(得分:0)
创建一个临时表变量并在其中插入sp值,如:
Declare @t table
(
--column numbers will be equals to the numbers return by SP
)
Insert Into @t
call my_stored_procedure(params)
Select * From @t