MySQL:使用join进行多次计数
这是我的两张桌子:MySQL:使用join进行多次计数,mysql,join,count,Mysql,Join,Count,这是我的两张桌子: [items] - id - model - location_id - 1 mA 23 2 mA 23 3 mA 23 4 mB 24 5 mB 24 6 mC 25 7 mC 26 [locations] - id - name - 23 aisle-3 24 aisle-4 25 aisle-5
[items]
- id - model - location_id -
1 mA 23
2 mA 23
3 mA 23
4 mB 24
5 mB 24
6 mC 25
7 mC 26
[locations]
- id - name -
23 aisle-3
24 aisle-4
25 aisle-5
26 aisle-6
我试图查询位置
表中的位置名称,并返回该位置的项目计数。以下是一些我尝试过却无济于事的东西:
SELECT name, COUNT(item.id)
FROM locations
INNER JOIN items AS item ON (item.location_id = locations.id)
有人能帮我吗?你忘了按分组:
SELECT l.*, COUNT(item.id)
FROM locations l
INNER JOIN items AS i
ON i.location_id = l.id
GROUP BY l.id
如果您想获得COUNT()
,即使没有分配到该位置的项目,您也应该左连接
,而不是内部连接