【发布时间】:2011-01-11 16:15:21
【问题描述】:
我在 oracle 中有下表:
Parent(arg1, arg2)
我想要关系父级的传递闭包。也就是我想要下表
Ancestor(arg1, arg2)
这在 Oracle 中怎么可能?
我正在做以下事情:
WITH Ancestor(arg1, arg2) AS (
SELECT p.arg1, p.arg2 from parent p
UNION
SELECT p.arg1 , a.arg2 from parent p, Ancestor a
WHERE p.arg2 = a.arg1
)
SELECT DISTINCT * FROM Ancestor;
我得到了错误
*Cause: column aliasing in WITH clause is not supported yet
*Action: specify aliasing in defintion subquery and retry
Error at Line: 1 Column: 20
如何在没有列别名的情况下解决这个问题?
【问题讨论】: