Процент случаев в группе по годам - PullRequest
0 голосов
/ 17 июня 2020

У меня есть этот набор данных:

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. Я думаю, что я должен также использовать хотел бы различать guish между значениями B и A. Как мне это сделать?

1 Ответ

2 голосов
/ 17 июня 2020
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
...