使用以下代码:
SELECT * FROM users u
JOIN sales s ON u.id = s.user_id
WHERE u.name = "Guest" AND s.removed = false;
Postgres 会抛出一个错误,指出“Guest”列不存在,即使我加上name
引号,但如果我删除该子句并只保留该s.remove = false
子句,则查询编译。为什么它找不到 WHERE 子句中未计算和提及的列?
使用以下代码:
SELECT * FROM users u
JOIN sales s ON u.id = s.user_id
WHERE u.name = "Guest" AND s.removed = false;
Postgres 会抛出一个错误,指出“Guest”列不存在,即使我加上name
引号,但如果我删除该子句并只保留该s.remove = false
子句,则查询编译。为什么它找不到 WHERE 子句中未计算和提及的列?