将列值设置为存储过程的输出参数

时间:2019-04-28 12:34:50

标签: sql-server stored-procedures

我正在研究存储过程,以检索列的平均值并将其返回给另一个存储过程。现在,我不知道如何将输出值设置为列值。

预先感谢您:)

CREATE PROCEDURE AverageGrade
    -- Add the parameters for the stored procedure here
    @course_grade INT OUTPUT
AS
BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;

    -- Insert statements for procedure here
    SELECT 
        PersonID, AVG(Grade) AS averagegrade 
    FROM
        Enrollment 
    GROUP BY
        PersonID;

    SELECT @course_grade = averagegrade;
END
GO

1 个答案:

答案 0 :(得分:0)

阅读您写的内容。 “我不知道如何设置该值...”。

注意关键字-设置。现在,请查看tsql set的语法,因为这是为标量变量分配值的方式。

要将查询的值分配给变量,请使用以下格式:

set @blah = (select ...);

文档中的示例F提供了一个完整的示例。去阅读并学习它。