I have two tables named letter
and letter_person
like this :
letter
:
id | subject | body | time
==========================
1 | Hello | null | ...
.
.
.
and letter_person
:
id | ref_person | ref_letter | role
========================================
1 | 1 | 1 | sender
2 | 2 | 1 | receiver
.
.
.
role
is an enum field and can be sender
or receiver
i want to select letters which are sent and received between two persons, i want something like this :
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')
But it's not exactly what i need.
This query selects all the letters which are sent by person1 + all the letters which are received by person2.
I need to get the conversation.