2015-04-22 136 views
0

无法使用内联同CLAUSE与Netezza公司CLAUSE

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 

ERROR [42S02] ERROR: relation does not exist ADMIN.EMPCTE

可有人请给替代解决方案..thanks

回答

0

这里的问题是不加入,但你在自己的定义中引用CTE。

Netezza目前不支持递归CTE/WITH表达式。

+0

感谢您的回复......任何备用解决方案? –

+0

这种逻辑最好作为存储过程来实现。 – ScottMcG