【Oracle】ORA-00923 FROM keyword not found where expected
我是在scott账号下练习sql中遇到的这个问题,sql如下:
列出至少有一名员工的所有部门
SELECT dname AS 部门名称, loc AS 位置 FROM dept WHERE deptno IN ( SELECT DISTINCT DEPTNO FROM emp )
从该错误中可以大概之后是因为FROM关键字前面的地方出现了问题,那也就是说列字段语法出现了问题,产生该问题的原因大概有两种,第一,排查FROM关键字有没有,有些人会写成FORM。 第二,是因为Oracle中比较严格,不支持单引号的使用,Oracle中只支持双引号或者不带引号,而在MySQL中全部支持。正确写法如下:
带双引号
SELECT dname AS "部门名称", loc AS "位置" FROM dept WHERE deptno IN ( SELECT DISTINCT DEPTNO FROM emp )
不带引号
SELECT dname AS 部门名称, loc AS 位置 FROM dept WHERE deptno IN ( SELECT DISTINCT DEPTNO FROM emp )
使用哪种写法就看各位的习惯了,希望能帮助到大家!
