我希望通过先前的命令获得oracle的连接。例如。我有一个项目表和一个由映射表project_employee连接的Employees表。每个员工都参与了一系列项目。现在我希望得到员工与他们的友谊之间的联系。员工是他所在项目的每个项目成员的朋友,他们的朋友也是开始时定义的员工的朋友。例如。项目P1由员工A,B和C完成。项目P2由B和C完成。项目P3由B和D完成。因此,员工A知道B和C(因为他们在P1工作)甚至D(因为A与B一起工作)在P1中,B在P3中与D)一起工作。这应该可以通过先前的查询联系来完成......但我无法掌握如何...
答案 0 :(得分:0)
我认为你需要这样的东西:
select *
from table_of_Employees e
where e.employee_id IN (
(select employee_id/*, level as lvl */
from project_employee pe
connect by NOCYCLE prior project_id = project_id
and prior employee_id != employee_id
start with employee_id IN (:some_start_employee)
)