【发布时间】:2018-08-20 18:11:50
【问题描述】:
数据库中的行是:
DATAID OWNERID PARENTID
111 123 133
976 346 111
987 976 657
我想显示所有这些行,但使用以下查询仅显示前 2 行,我需要所有 3 行:
SELECT * FROM DTREE start with DATAID=111
connect by prior dataid=parentid OR dataid=ownerid;
它似乎只运行dataid=parentid 部分而不是第二个部分。
【问题讨论】:
-
DATAID值987未通过父 ID 或所有者 ID 连接到任何其他行。您期望这里的输出是什么? -
DATAID的值应该算976吧?之后因为第 3 行的 ownerid 是 976(dataid=ownerid) 因此它应该被显示?
-
only the top 2 rows are getting displayed...这是我所期望的。 -
如何修改查询以获得第三行?
-
第三行不属于输出。
标签: sql oracle connect-by