每个唯一值的存储过程,执行计算和存储结果

时间:2013-06-27 23:03:36

标签: sql sql-server tsql stored-procedures

对于我正在开发的存储过程,我有点困惑。

基本上,有一个名为TicketRenewals的表,其中包含以下相关列:

Sales Rep | TicketPriceTotal | RenewalGroup
---------------------------------------------
John Doe  | $6,000           | Group 1
John Doe  | $4,000           | Group 1
Liz Smith | $1,000           | Group 1
Liz Smith | $4,000           | Group 1
...
John Doe  | $3,000           | Group 2
John Doe  | $4,000           | Group 2
John Doe  | $5,000           | Group 2
Liz Smith | $9,000           | Group 2

每个ticketrenewal都附有SalesRepId,ticketprice并与续订组相关联。

我想先关闭,根据RenewalGroupId划分数据。然后将该续订组中的所有销售代表组合在一起并汇总票价。结果将类似于。

Sales Rep | SUM(TicketPriceTotal) | RenewalGroup
---------------------------------------------
John Doe  | $10,000          | Group 1
Liz Smith | $5,000           | Group 1
...
John Doe  | $12,000          | Group 2
Liz Smith | $9,000           | Group 2

我不确定如何在不将续订组分组的情况下对销售代表进行分组。

非常感谢任何帮助。

谢谢!

1 个答案:

答案 0 :(得分:1)

从您想要的输出结果来看,您似乎想要由Renewal Group进行分组。

这将产生SalesRepId和RenewalGroup的每个唯一组合及其对应的TicketPriceTotal总和:

 SELECT SalesRepId, SUM(TicketPriceTotal) as 'SUM(TicketPriceTotal)', RenewalGroup
 from TicketRenewals 
 group by SalesRepId, RenewalGroup