table 如下

現在想得出分類金額占比的結果,如下圖:

即order by date,category
最后那列amt_percent是圖一中每一天的每一類的金額在整個表所有金額總和的占比,求問如何實作最后那列amt_percent?
樓主想到的方法算出來不對:
select
date,
category,
catamt,
catamt/sum(catamt) amt_percent
from
(select
date,
category,
case when category = 'A' then sum(amount)
when category = 'B' then sum(amount)
when category = 'C' then sum(amount)
end catamt
from Tb
) a
group by date, category
uj5u.com熱心網友回復:
select date,category,sum(amount),concat(amount*100/(select sum(amount) from tb where A.date=date and A.category=category ),'%')from tb A
group by date,category
uj5u.com熱心網友回復:
樓主你想按不同的分類里面分別算百分比?還是不按分類算百分比呢?轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/95203.html
標籤:MySQL
