my message table
message_id | message_body_content | sender_user_id | receiver_user_id
1 | hello world | 1000 | 1200
2 | hello world 2 | 1001 | 1200
3 | hello world again | 1000 | 1200
4 | xyz | 1001 | 1200
5 | abc | 1200 | 1999
I want to group by my message
table by sender_user_id
unique and by last message_id
so output should be like;
message_id | message_body_content | sender_user_id | receiver_user_id
3 | hello world again | 1000 | 1200
4 | xyz | 1001 | 1200
Because latest message_id
for sender_user_id
IS 3. This is in theory.
When I try
SELECT * FROM message WHERE receiver_user_id = 1200
GROUP BY sender_user_id
ORDER BY message_id DESC
It did not work. Because MySQL grouping first by message_id
(min message_id value)
then sorting.
How can I get unique sender message by max message_id