我正在解决一个练习问题,并尝试在“打开”字段中使用表别名,但是它不起作用。
SELECT c.code AS country_code, name, year, inflation_rate
FROM countries AS c
Join to economies (alias e)
INNER JOIN economies AS e
**ON c.code = e.code;**
这是标准答案
SELECT c.code AS country_code, name, year, inflation_rate
FROM countries AS c
Join to economies (alias e)
INNER JOIN economies AS e
**ON countries_code = e.code;**
这是我输入的内容
标准答案是希望我在ON字段中使用“ c.code”,但我尝试使用别名“ country_code”,但不会返回任何结果。
答案 0 :(得分:1)
在SELECT
中不能使用在FROM
中定义的列别名(因此不能在ON
之类的子句中)或WHERE
子句中使用。
某些数据库在GROUP BY
和/或HAVING
子句中允许使用别名。 ORDER BY
子句中的所有(或几乎全部)允许它们。
可用别名的地方称为作用域。