我对 SQL(MySQL 环境)有疑问。我有两个表:
Airports
--------------------
id type city_id
1 2 1
2 3 1
3 4 2
City
----------
id name
1 Paris
2 Lyon
我想要机场类型为 2 和 3 的城市。
我试过了:
SELECT *
FROM city c INNER JOIN airports a ON a.city_id = c.id
WHERE a.type = 1 AND a.type = 2
但它不起作用。
有什么想法吗?
最佳答案
如果您需要同时存在 1 类和 2 类机场的城市,请尝试使用此查询:
SELECT * FROM CITY
JOIN
(
SELECT CITY_ID FROM Airports WHERE type in (1,2)
GROUP BY CITY_ID
HAVING COUNT(DISTINCT type) =2
) as A
ON City.ID=a.City_id
关于mysql - SQL:获取 parent Join child where child type = 1 AND child type = 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24008607/