查表语句自己本身可以作为一个表或者对象,可以对它使用in判断字段数据是否在查出的列中
eg:
select contest_id, round(count(*) / (select count(*) from users), 4)*100 as percentage
#这里select返回一个数字即可作为分母。
from register r left join users u
on u.user_id = r.user_id
group by contest_id
order by percentage desc, r.contest_id;
###
select query_name, round(avg( rating/position ),2) quality,
round(count( case when rating < 3 then 1 END)/ count(*) *100,2) poor_query_percentage
from queries
group by query_name;