将存储过程应用于多个项目

时间:2014-02-19 12:49:48

标签: sql stored-procedures

我有存储过程,例如:

EXEC [dbo].[HowOldAmI] @date

我现在有多个日期(@dates列表),我想在

上运行存储过程

有没有办法在select语句的结果上运行存储过程?

2 个答案:

答案 0 :(得分:1)

存储过程用于封装一些业务逻辑,但是当你想进行一些计算时,可以使用函数,因为它们可以与select语句一起使用。所以,在存储过程中将逻辑重写为函数:

CREATE FUNCTION HowOldAmI (@date datetime)
RETURNS int AS  
BEGIN 
    -- logic goes here
END

然后选择查询:

SELECT * ,
     HowOldAmI (T1.[date])
 FROM
     [Table1] T1

答案 1 :(得分:0)

如果您创建的是函数而不是过程,则可以在select语句中调用它。否则,您将不得不创建一个游标并循环结果。