在Netezza中使用条款

时间:2015-04-22 15:43:41

标签: netezza

无法在WITH CLAUSE

中使用JOIN
WITH EmpCTE(empid, empname, mgrid, lvl)
AS
( 
  -- Anchor Member (AM)
  SELECT empid, empname, mgrid, 0
  FROM Employees
  WHERE empid = 7
  UNION ALL

  -- Recursive Member (RM)
  SELECT E.empid, E.empname, E.mgrid, M.lvl+1
  FROM Employees AS E
    JOIN EmpCTE AS M
      ON E.mgrid = M.empid
)
SELECT * FROM EmpCTE e order by e.empid  
  

错误[42S02]错误:关系不存在ADMIN.EMPCTE

有人可以提供替代解决方案..谢谢

1 个答案:

答案 0 :(得分:0)

这里的问题不是JOIN,而是您在自己的定义中引用CTE。

Netezza目前(截至v7.2)不支持递归CTE / WITH表达式。