关于SQL多类别汇总取最大值的实现

2017-11-07  本文已影响0人  大混沌IAM

销售明细按站名、各大类中的销售收入最高的商品进行汇总。想了半天 可以用如下SQL实现:

select a.便利店名称,a.商品品类描述,round(a.销售收入max,2) as 收入,b.商品名称 from

(

select 便利店名称, 商品品类描述, max(销售收入base) as 销售收入max from

(

SELECT 便利店名称, 商品品类描述, 商品名称, sum(销售收入) AS 销售收入base FROM usmile GROUP BY 便利店名称, 商品品类描述, 商品名称 HAVING sum(销售收入)>0

) base

GROUP BY 便利店名称, 商品品类描述

) a,

(

select 便利店名称, 商品名称, max(销售收入base) as 销售收入max from

(

SELECT 便利店名称, 商品品类描述, 商品名称, sum(销售收入) AS 销售收入base FROM usmile GROUP BY 便利店名称, 商品品类描述, 商品名称 HAVING sum(销售收入)>0

) base

GROUP BY 便利店名称, 商品名称

) b

where a.便利店名称=b.便利店名称 and a.销售收入max=b.销售收入max

上一篇下一篇

猜你喜欢

热点阅读