SELECT i.name, x.total FROM Item i,
(SELECT Item_id, COUNT(Item_id) as total FROM Tracking
WHERE date > DATE_SUB(NOW(), INTERVAL 1 MONTH) GROUP BY Item_id)x
WHERE i.id = x.Item_id
我想要的是计算上个月资源的使用次数 例子 - (第1,0项), (第2,4项), (第3项,第2项) 我得到的只是具有值的项目,因此项目1将不显示以及上个月没有出现的任何其他项目
答案 0 :(得分:1)
如果您想要所有项目,无论它们是否有任何外观,请使用条件聚合而不是where
子句:
SELECT Item_id,
SUM(date > DATE_SUB(NOW(), INTERVAL 1 MONTH)) as total
FROM Tracking
GROUP BY Item_id;
答案 1 :(得分:0)
SELECT i.name, x.total
FROM Item i
LEFT JOIN (SELECT Item_id, COUNT(Item_id) as total
FROM Tracking
WHERE date > DATE_SUB(NOW(), INTERVAL 1 MONTH)
GROUP BY Item_id) x ON i.id = x.Item_id