有三列数据,需求是先不管地区,按照银行分类,求和金额,即将A银行的金额求和(1+2),按照求和的值从大到小排列,目前sql是 select 银行,地区,sum(金额) as 金额 from sss
group by 银行,地区,求sql该怎么写
你的分类是想把金额最大银行放前面
先求出银行的总金额
最后按照总金额排序
参考SQL
select a.银行, a.金额 as 银行总金额, b.地区, b.金额
from (select 银行, sum(金额) as 金额 from sss group by 银行) a
left join (select 银行, 地区, sum(金额) as 金额 from sss group by 银行, 地区) b
on a.银行 = b.银行
order by 银行总金额 desc
select 银行,地区,sum(金额) as 金额 from sss
group by 银行,地区
order by sum(金额) desc