小编典典

一组中案件的百分比(按年份)

sql

我有这个数据集:

Year   Grade  count 
2010    B2     1
2010    B      478
2010    B1     46
2010    B1     12 
2010    B1     2
2010    B2     612
2010    A1     160
2010    A1     8
...

我想确定每一年(在示例中只有2010年)A1和B1在该年总数中的百分比,即

478 + 46 + 12 + 2 = 538 B的总和(B1,B,B2):1202

为了得到45%的百分比。同样对于A。我想我也应该使用like来区分B和A值。我能怎么做?


阅读 150

收藏
2021-05-16

共1个答案

小编典典

SEL years,
Score,
,count(0)
,100.0*count(*) / 
Sum(Count(CASE WHEN grade LIKE '_1' THEN 1 end ))   -- A1 & B1
Over (PARTITION BY years, Substr(grade,1,1)) AS pct -- per A/B
From table1
Group by 1,2
2021-05-16