我不明白这个查询出了什么问题。
select last_name, first_name a from employees order by "a";
输出是:
ORA-00904: "a": invalid identifier
然而,这个查询工作和排序的结果由first_name升序。
select last_name, first_name a from employees order by "A";
Oracle默认情况下是不区分大小写的。
所以,当你说
select first_name a from employees
甲骨文认为,这是
SELECT FIRST_NAME A FROM EMPLOYEES
但当你开始使用 "引号 "时... ...
order by "a"
甲骨文将其视为
ORDER BY "a"
a <> A
如果你确保你的引号对象也总是大写,这就不是一个问题,这就是为什么你的 "A "能用,而你的 "a "不能用。
我的建议是--完全去掉对象名上的引号。
SELECT LAST_NAME, FIRST_NAME A FROM EMPLOYEES ORDER BY A;