我有一个表Identity(id, super_identity_id)
和一个表Conversation(id, identity_id)
多个身份可以参考相同的super_identity
。
说我有identity A
,我想获得所有conversations
- 谁属于
A
- 谁属于
A
的super_identity
- 谁属于与
A
相同CC_11
的任何
identity
我能做的最好的是
select
i.id,
i.super_identity_id
from identities i
left join identities ii on ii.super_identity_id = i.super_identity_id
where ii.id = 133
,但以上不尊重(2)
有什么想法?
select
i.id,
i.super_identity_id
from identities i
inner join identities ii on ii.super_identity_id = i.super_identity_id and ii.id = 133