我有一个与此类似的数据集:
Gender Survival
Male 0
Female 1
Male 0
Male 1
Female 0
我需要找到一部分按性别存活的人。目前我有以下查询:
select gender, count(gender) as 'Survived' from my_table where survival = 1 group by gender;
现在我需要添加一个子查询,将子计数除以每个性别的总人数。所以基本上我需要这样的东西:
Male 33%
Female 50%
答案 0 :(得分:3)
您可以使用SUM
和COUNT
获取平均值
SELECT Gender, ROUND(SUM(Survival = 1) / COUNT(*), 2) * 100
FROM my_table
GROUP BY Gender
这是DEMO
答案 1 :(得分:0)
按性别,生存率选择性别,(计数(生存)/计数(*)* 100)作为table_name组的百分比;