我有一个SQL表,其中包含一列名称和一列他们为票款支付的价格。我可以使用哪个查询来查询支付超过100英镑的人所占的百分比?谢谢
答案 0 :(得分:2)
您可以使用avg()
来获取比率:
select avg(case when price > 100 then 1.0 else 0 end)
from t;
答案 1 :(得分:1)
select
100.0 -- to get a percentage
* count(case when price > 100 then 1 end) -- who paid over 100?
/ count(*) -- all rows
from tickets