我正在研究数据库,我正在尝试选择一些特殊数据。 所以表格看起来像这样。
name title type
类型包括两个不同的值," book"和"纸张#34;。
这是我想要的结果
name book paper
person A 0 1
person B 1 2
person C 0 5
在MySQL中编写查询的最佳方法是什么?
答案 0 :(得分:0)
您可以使用条件聚合:
SELECT
name,
SUM(CASE WHEN type = 'book' THEN 1 ELSE 0 END) AS book,
SUM(CASE WHEN type = 'paper' THEN 1 ELSE 0 END) AS paper
FROM yourTable
GROUP BY
name;