【问题标题】:Cumulative column based on the values of a calculated column基于计算列的值的累积列
【发布时间】:2019-09-13 21:35:07
【问题描述】:

我正在做一个 SELECT:

SELECT  
    datein as 'Date In',      
    COUNT(lab) as 'Count of Jobs',    
    ROUND(COUNT(lab) * 100.0 / SUM(COUNT(lab)) OVER(),2) AS 'Percentage'   
    "CODE FOR CUMULATIVE PERCENTAGE"
FROM [DailyWIP].[dbo].[WIP_ETO] 
GROUP BY datein 
ORDER BY datein desc;

预期结果:

【问题讨论】:

  • 您使用的是哪个 RDBMS?此外,如果您能提供与您的预期输出相对应的示例数据,那就太好了。

标签: sql cumulative-sum


【解决方案1】:

我想你想要:

SELECT datein,      
       COUNT(lab) as job_count    
       ROUND(COUNT(lab) * 100.0 / SUM(COUNT(lab)) OVER (),2) AS Percentage  
       ROUND(SUM(COUNT(lab)) OVER (PARTITION BY datein DESC) * 100.0 / SUM(COUNT(lab)) OVER (), 2) AS Cumulative_Percentage  
FROM [DailyWIP].[dbo].[WIP_ETO] 
GROUP BY datein 
ORDER BY datein desc;

【讨论】:

  • 太棒了!我将其更改为: ROUND(SUM(COUNT(lab)) OVER (ORDER BY datein DESC) * 100.0 / SUM(COUNT(lab)) OVER (),2) AS Cumulative_Percentage 它按我的需要工作,谢谢你非常
猜你喜欢
  • 1970-01-01
  • 2020-07-18
  • 1970-01-01
  • 2018-04-09
  • 2020-12-17
  • 1970-01-01
  • 2018-03-26
  • 2019-07-08
  • 2020-10-26
相关资源
最近更新 更多