我有以下两个表,分类和销售。我想每天计算每个类别的数量。
类别表
id cat_name
01 A
02 B
03 C
销售表
date cat_id
2015/02/01 01
2015/02/01 01
2015/02/01 03
2015/02/02 02
2015/02/02 03
2015/02/02 03
2015/02/03 01
2015/02/03 02
2015/02/03 02
结果
date A B C
2015/02/01 2 0 1
2015/02/02 0 1 2
2015/02/03 1 2 0
非常感谢任何帮助。
答案 0 :(得分:1)
<强>查询强>
SELECT s.`date`,
COUNT(CASE WHEN s.cat_id=01 THEN cat_id END) AS A,
COUNT(CASE WHEN s.cat_id=02 THEN cat_id END) AS B,
COUNT(CASE WHEN s.cat_id=03 THEN cat_id END) AS C
FROM sales s
JOIN category c
ON s.cat_id=c.id
GROUP BY s.`date`;