Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como obter várias contagens com uma consulta SQL?


Você pode usar um CASE declaração com uma função agregada. Isso é basicamente a mesma coisa que um PIVOT função em alguns RDBMS:
SELECT distributor_id,
    count(*) AS total,
    sum(case when level = 'exec' then 1 else 0 end) AS ExecCount,
    sum(case when level = 'personal' then 1 else 0 end) AS PersonalCount
FROM yourtable
GROUP BY distributor_id