订阅Person SQL Query的相互订阅

时间:2014-08-04 09:05:27

标签: sql oracle

在我之前的问题中,我询问如何为一个人的订阅的相互订阅编写一个密码查询。我得到了帮助,我很感激,但现在我需要在SQL语法中使用相同的查询。我的第一个想法是我需要为此编写一个递归查询。但我不确定,因此需要一些指导,说明这是对的还是其他方式。

我在ORACLE RDBMS中的模型如下:

Person(PersonID, Age, Gender)

Relationship(FromPersonID, ToPersonID)

想象一下,我是想要发现的人,我的订阅有哪些相互订阅,即我的订阅--->我订阅的相互订阅。

需要更多指导。感谢。

1 个答案:

答案 0 :(得分:0)

试试这个:

select prs1.PersonID fromPersonID, prs1.Age fromAge, prs1.Gender fromGender
     , prs2.PersonID toPersonID, prs1.Age toAge, prs1.Gender toGender
  from Person prs1
     , Person prs2
     , Relationship rlsp
 where prs1.PersonId = rlsp.fromPersonID
   and prs2.PersonId = rlsp.toPersonID