我创建了 3 个 mysql 表:
表“城市”:包含城市
i.e | name |
+========+
| Athens |
+--------+
| Rome |
+--------+
| Paris |
+--------+
表“类别”:包含类别
i.e | name |
+============+
| category_1 |
+------------+
| category_2 |
+------------+
表“shops”:包含商店
i.e | name | category_name | city_name |
+========+=================+=============+
| shop_1 | category_2 | Rome |
+--------+-----------------+-------------|
| shop_2 | category_2 | Rome |
+--------+-----------------+-------------+
| shop_3 | category_1 | Paris |
+--------+-----------------+-------------+
我正在尝试创建一个查询,该查询将允许我创建以下 html 数组(显示每个城市按类别分组的商店数量):
| || category_1 | category_2 |
+========++================+=============+
| Athens || 0 | 0 |
+--------++----------------+-------------|
| Rome || 0 | 2 |
+--------++----------------+-------------+
| Paris || 1 | 0 |
+--------++----------------+-------------+
预先感谢您, 扬尼斯
最佳答案
试试这个
select c.name,
sum(case when s.category_name='category_1' then 1 else 0 end) as categoty_1,
sum(case when s.category_name='category_2' then 1 else 0 end) as categoty_2
from city as c left join shops as s on c.name=s,city_name
group by c.name
关于mysql - 3张表之间的特殊连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32310990/