我的 table1 有 2 个 ID,每个 ID 有 2 个值(Y,N)。我可以通过以下查询来计算值:
select id
,count(*) as "total"
,choice
from table1
where id in (1,8)
group by id, choice
我得到以下结果:
ID | 全部的 | 选择 |
---|---|---|
1 | 55 | 氮 |
1 | 17 号 | 是 |
8 | 第319章 | 氮 |
8 | 123 | 是 |
有没有办法编写一个查询,为我提供每个 id 的每个值 (Y,N) 的百分比?
(id1:55/55+17(N)、17/55+17(Y)等)
期望的结果:
ID | 全部的 | 选择 | 百分 |
---|---|---|---|
1 | 55 | 氮 | 0.236 |
1 | 17 号 | 是 | 0.764 |
8 | 第319章 | 氮 | 0.7222 |
8 | 123 | 是 | 0.278 |
我还需要在查询中使用 count(*) 吗?
sum
使用聚合窗口count