我正在尝试提取名称为“ BEIJING”的所有可能的机场,但是由于“ Airplanes.name”和“ Airport.name”,我一直收到列名重复的错误。如何更改逻辑?
SELECT * FROM
(SELECT Airplanes.name, Airport.name
FROM Airplanes, Airport
WHERE Airplanes.Airport = Airport.id) RESULT
WHERE RESULT.name = "BEIJING";```
答案 0 :(得分:0)
只需将列别名添加到您的子查询中:
SELECT * FROM
(SELECT Airplanes.name AS airplane, Airport.name AS airport
FROM Airplanes, Airport
WHERE Airplanes.Airport = Airport.id) RESULT
WHERE RESULT.airport = "BEIJING"
请注意,您实际上应该更新为现代JOIN
语法:
SELECT * FROM
(SELECT Airplanes.name AS airplane, Airport.name AS airport
FROM Airplanes
JOIN Airport ON Airplanes.Airport = Airport.id) RESULT
WHERE RESULT.airport = "BEIJING"