SELECT messages.* FROM messages, (SELECT MAX(id) as lastid FROM messages
WHERE receiver = 13 OR sender = 13
GROUP BY CONCAT(LEAST(receiver,sender),'.',GREATEST(receiver,sender))) as conversations
WHERE id = conversations.lastid
ORDER BY timestamp DESC
những gì bạn cần là một id cuộc trò chuyện duy nhất giữa các đối tác trò chuyện. tôi đã mô phỏng điều này bằng truy vấn con, hy vọng điều này sẽ hữu ích