Loading

SQL技巧之分组求和

这是CSDN问答里面有人提出的一道问题,题目如下。

表格如下:

得出结果如下:

求精简的SQL语句。

 

SQL查询语句:

with a as(
select rank() over (partition by 商店 order by 商店,sum(价钱) desc) as rowid,
商店,sum(价钱) as 价钱和,备注 from 产品 group by 备注,商店),

b as(
select 商店,价钱和,备注 from a where rowid = 1),

c as(
select 商店,sum(价钱和) as 卖出价钱和 from a group by 商店)

select c.商店,c.卖出价钱和,b.备注 as 卖出价钱最高货物,b.价钱和 as 卖出最高价格货物价格之和 
from c inner join b on c.商店 = b.商店

 

posted @ 2015-08-11 09:36  guwei4037  阅读(6067)  评论(0编辑  收藏  举报