【问题标题】:Sql Aggregate Results of a Stored Procedure存储过程的 Sql 聚合结果
【发布时间】:2009-02-27 18:33:51
【问题描述】:

我目前有一个存储过程,它返回帐号和相关详细信息的列表。结果集可能包含同一帐号的多个条目。我还想获得一些汇总信息,例如特定结果集中包含多少不同的帐户。有没有办法从我的存储过程结果中检索这样的视图,例如

SELECT AccountNumber, Count(*) 
FROM mystoredproc_sp 
GROUP BY AccountNumber

如果它需要包含在另一个存储过程中也没关系,但我希望至少能够从第一个 SP 中已经存在的逻辑中受益,而无需复制其大部分代码。

【问题讨论】:

    标签: sql stored-procedures aggregate


    【解决方案1】:
    DECLARE @tt TABLE (acc INTEGER)
    INSERT INTO @tt EXECUTE mystoredproc_sp
    SELECT acc, COUNT(*) FROM @tt GROUP BY acc
    

    【讨论】:

      【解决方案2】:

      您必须将查询移动到表值函数中,并从两个存储过程(旧的和新的)中调用它。这样,您只需在一个地方进行查询。无法从存储过程结果集中进行选择。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2010-10-10
        • 2019-03-07
        • 1970-01-01
        • 2023-03-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多