我有两个名为的表letter
,letter_person
如下所示:
letter
:
id | subject | body | time
==========================
1 | Hello | null | ...
.
.
.
和letter_person
:
id | ref_person | ref_letter | role
========================================
1 | 1 | 1 | sender
2 | 2 | 1 | receiver
.
.
.
role
是一个枚举字段,可以是sender
或receiver
我想选择两个人之间发送和接收的信件,我想要这样的东西:
SELECT * FROM letter
JOIN letter_person ON letter_person.ref_letter = letter
WHERE
(letter_person.ref_person = 1 AND letter_person.role = 'sender')
OR
(letter_person.ref_person = 2 AND letter_person.role = 'receiver')
但这并不是我所需要的。
此查询选择 person1 发送的所有信件 + person2 收到的所有信件。
我需要得到谈话。