你能把函数的结果作为参数传递给存储过程吗?

时间:2010-12-16 07:30:19

标签: sql sql-server

使用SqlServer 2005,可以在SomeFunction返回值的情况下执行此类操作。例如1234

EXEC [dbo].[SomeStoredProcedure] @SomeParameter = SomeFunction()

2 个答案:

答案 0 :(得分:4)

您需要先声明一个变量来保存函数的结果。然后,您可以将变量传递给存储过程

Declare @FunctionResult int

Select @FunctionResult = dbo.YourFunction()

Exec dbo.YourStoredProcedure @FunctionResult

答案 1 :(得分:0)

似乎我没有足够的声誉来评论已接受的答案。

这是一种更简洁的语法,其中变量的声明和赋值在一行中完成:

Declare @FunctionResult int = dbo.YourFunction()

Exec dbo.YourStoredProcedure @FunctionResult