我有以下表格:
| Store | Address | Category | link |
| id | id | id | fk_categoryID |
| fk_addressID | city | category | fk_storeID |
我想选择地址为A类的所有商店。
我用它来查找特定城市的商店:
SELECT a.name, b.street1, b.street2, b.city
FROM store a
JOIN address b ON b.id = a.fk_addressID
WHERE b.city = 'oslo'
现在我只需要添加类别标准。
我不记得该怎么做了。为链接表添加另一个INNER或LEFT联接可以正常工作,但是我找到的每个商店都有7-10行。
有人可以帮我吗?
答案 0 :(得分:1)
尝试以下方法:
SELECT s.id AS "Store ID", a.id AS "Address ID", a.city AS "City", c.category AS "Category" FROM store s
LEFT JOIN address a ON a.id = s.fk_addressID
LEFT JOIN link l on l.fk_storeID = s.id
LEFT JOIN category c on c.id = l.fk_categoryID
WHERE a.city = "oslo" AND c.category = "A";
如果有帮助,请告诉我!
修改强>
在我的计算机上重新创建架构,添加了一些测试数据,运行SQL并获得以下内容: