[英]Row total by grand total in redshift or sql
我希望除以該列的總和的列的行級數據。 以下是我擁有的數據集。
date | sales | avg
2018-12-01 | 10 | 10/215
2018-12-02 | 40 | 40/215
2018-12-03 | 40 | 40/215
2018-12-04 | 10 | 10/215
2018-12-05 | 30 | 30/215
2018-12-06 | 20 | 20/215
2018-12-07 | 35 | 35/215
2018-12-08 | 30 | 30/215
Grand total| 215
在“平均值”列中,我希望將行的數據除以該列的總計,以了解該特定日期的平均值是多少。 我們的數據庫使用 redshift 來提取數據。 我們如何解決上述問題? 另外,我不想顯示總計行。
您將使用窗口函數:
select t.*,
sales * 1.0 / sum(sales) over () as sales_ratio
from t;
我知道這不是最好的解決方案,但仍然有效,並且對您來說是另一種可能性。
Select *,
AVG = (sales/(select sum(sales)from your_table))
from your_table
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.