ORA-32039: recursive WITH clause must have column alias list
Cause: A WITH clause query referred to itself (recursive) but did not have a column alias list specified for it.
Action: Add a column alias list for the WITH clause query name.
ORA-32039: recursive WITH clause must have column alias list错误指的是在使用递归查询子句时,必须使用列别名列表。
错误说明:
ORA-32039:递归WITH子句必须有列别名列表错误表明在递归查询子句中,必须使用列别名列表。在采用此子句查询数据库时,如果没有使用列别名列表, 就会报此错误。
这个错误常常出现在你用Cascading With Statement(也就是递归查询)去查询你的数据库,但是你在使用时忘记了添加别名。例如:
WITH Emp_dept AS (SELECT Empname, Deptname FROM Employees WHERE age > 20)
SELECT Empname, Deptname FROM Emp_dept;
这样的话你就有可能会收到ORA-32039: recursive WITH clause must have column alias list错误提示。
解决方法:
要解决这个错误,你需要在递归查询的语句中添加列别名列表。例如:
WITH Emp_dept AS (SELECT Empname AS Ename, Deptname AS Dname FROM Employees WHERE age > 20)
SELECT Ename, Dname FROM Emp_dept;
这样就可以解决这个错误。