mariadb 根据行条件计算出现次数[重复]

q5iwbnjs  于 7个月前  发布在  其他
关注(0)|答案(2)|浏览(55)

此问题已在此处有答案

MySQL - Rows to Columns(13个回答)
上个月关门了。
我有这个表,在左边有一个样本输入表和右边所需的输出

如何使用MySQL上的SQL计算每个empid的状态数。

368yc8dk

368yc8dk1#

常见条件聚合:

SELECT `emp-id`,
       SUM(status = 'Open') `Open`,
       SUM(status = 'Pending') `Pending`,
       SUM(status = 'Resolved') `Resolved`
FROM source_table
GROUP BY 1;
gev0vcfq

gev0vcfq2#

试试这样的方法:

SELECT empid,
       COUNT(CASE WHEN status = 'Open' THEN 1 END) `open`,
       COUNT(CASE WHEN status = 'Pending' THEN 1 END) `pending`,
       COUNT(CASE WHEN status = 'Resolved' THEN 1 END) `resolved`
FROM sampletable
GROUP BY empid;

Goodle为“pivot mySQL”提供其他解决方案。

相关问题