I have a user entity with two user foreign key (from_id and to_id) in a message entity like that :
So, all records are :
id | from_id | to_id | datemessage | message |
:------|:--------|:-------|:-----------------------|:----------------|
10 | 2 | 1 | 2017-09-17 18:45:46 | redsfdffdfgd
13 | 2 | 1 | 2017-09-18 13:33:18 | Hi You
15 | 2 | 1 | 2017-09-18 13:33:52 | Hi You
17 | 2 | 1 | 2017-09-18 13:34:41 | Hi You
5 | 4 | 2 | 2017-09-17 09:27:04 | TEst
8 | 1 | 2 | 2017-09-18 15:01:03 | testasdfas
9 | 1 | 3 | 2017-09-17 18:42:34 | jjkjlkjkjkl
14 | 2 | 3 | 2017-09-18 13:33:32 | Hi You
16 | 2 | 3 | 2017-09-18 13:34:30 | Hey You
6 | 2 | 4 | 2017-09-17 10:14:31 | test
7 | 2 | 4 | 2017-09-17 10:14:57 | a bon voila
11 | 1 | 4 | 2017-09-18 13:32:20 | Hey You
12 | 2 | 4 | 2017-09-18 13:32:57 | Hey ZIoup
18 | 2 | 4 | 2017-09-18 13:34:51 | Have a nice day
The result I want for the user 2 is :
id | from_id | to_id | datemessage | message |
:------|:--------|:-------|:-----------------------|:----------------|
8 | 1 | 2 | 2017-09-18 15:01:03 | testasdfas
16 | 2 | 3 | 2017-09-18 13:34:30 | Hey You
18 | 2 | 4 | 2017-09-18 13:34:51 | Have a nice day
I want every last records for user "2" (distinct from_id and to_id) Thanks for everybody could help me :)
I tried this query, but it don't sort my query by date :
SELECT distinct_id,
id,
from_id,
to_id,
datemessage,
message,
FROM
(SELECT message.from_id AS from_id,
message.id AS id,
message.from_id AS distinct_id,
message.to_id AS to_id,
message.datemessage AS datemessage,
message.message AS message,
fos_user.id AS user_id,
fos_user.username AS username
FROM message
LEFT JOIN fos_user ON message.from_id = fos_user.id
WHERE message.to_id = :user_id
UNION SELECT message.to_id AS to_id,
message.id AS id,
message.to_id AS distinct_id,
message.from_id AS to_from,
message.datemessage AS datemessage,
message.message AS message,
fos_user.id AS user_id,
fos_user.username AS username
FROM message
LEFT JOIN fos_user ON message.to_id = fos_user.id
WHERE message.from_id = :user_id ) AS message
GROUP BY distinct_id
ORDER BY DATE(datemessage) ASC
Thanks everybody for your help :)