Postgresql
將列中的分類值轉換為列本身(轉置)
專家們,
我有這個數據 -
ID | buckets | SUM (USD)| --------- --------------- --------- 1 | 10 - 20 | 500 | --------- --------------- --------- 1 | 30 - 40 | 100 | --------- --------------- --------- 2 | 30 - 40 | 300 | --------- --------------- ---------
現在,當在 Excel 中如此簡單時,我正在嘗試並未能在 PSQL 中獲得輸出->
ID |. 10-20 | 30-40 | Total_USD | --------- --------------- --------- ----------- 1 | 500 | 100 | 600 | --------- --------------- --------- ----------- 2 | | 300 | 300 | --------- --------------- --------- -----------
如果您能指導我/給我正確的方向,將不勝感激
可以使用過濾聚合完成數據透視(或交叉表):
select id, sum("sum") filter (where buckets = '10 - 20') as "10 - 20", sum("sum") filter (where buckets = '30 - 40') as "30 - 40", sum("sum") as total from the_table group by id order by id;
但總的來說,SQL 並不是為這種類型的報告而設計的。在 Excel(或任何其他報告軟體)中執行此操作是一個更好的解決方案。