Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment puis-je obtenir le pourcentage de lignes totales avec mysql pour un groupe ?

Oui, vous pouvez :

select num, string, 100 * num / total as percent
from (
    select count(*) as num, string
    from useragent_ip
    left join useragents on useragent_id = useragents.id
    group by useragent_id) x
cross join (
    select count(*) as total
    from useragent_ip
    left join useragents on useragent_id = useragents.id) y
order by num desc, string;

J'ai supprimé le having num > 2 , car cela ne semblait pas logique.