如何 return SQL 服务器存储过程的计算(聚合)结果

How to return the calculated (aggregated) result of a SQL Server stored procedure

我正在尝试编写一个存储过程,它将 return 一个数字(平均值)- 这是我目前所拥有的...

ALTER PROCEDURE [dbo].[sp_GetAverageRating]
    @RecipeNodeId int 
AS 
    SET NOCOUNT ON;

    (SELECT SUM(Rating) AS RatingTotal
     FROM dbo.RecipeRating
     WHERE RecipeNodeId = @RecipeNodeId)

    (SELECT 
         COUNT(Rating) AS RatingEntries 
     FROM dbo.RecipeRating 
     WHERE RecipeNodeId = @RecipeNodeId)

所以这有效并给了我

A.) 总评分
B.) 评级条目数

我想 return 来自存储过程的评分总计/评分条目。

谁能帮我解决语法问题?

只需使用AVG函数:

SELECT AVG(Rating) as RatingTotal
FROM dbo.RecipeRating
WHERE RecipeNodeId = @RecipeNodeId