Система обмена сообщениями с PHP / MySQL

Привет, я пытаюсь создать систему обмена сообщениями с php и mysql.

Таблица mysql проста: идентификатор сообщения отправителя ID отправителя

Я пытаюсь сделать обмен сообщениями несколько похожим на Facebook / Twitter, поэтому список находится в «разговорах», и просматривается последнее сообщение в разговоре .

Это то, что у меня есть:

(SELECT * FROM messages WHERE receiver = 13 OR sender = 13 GROUP BY receiver,sender ORDER BY id ASC) ORDER BY id ASC 

Solutions Collecting From Web of "Система обмена сообщениями с PHP / MySQL"

 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 

вам нужен уникальный идентификатор беседы между чат-партнерами. Я смоделировал это с помощью подзапроса, надеюсь, что это поможет

UPDAte : Я не уверен, что он работает идеально:

 SELECT * FROM messages WHERE receiver = 13 GROUP BY receiver,sender ORDER BY timestamp DESC LIMIT 1 UNION ALL SELECT * FROM messages WHERE sender = 13 GROUP BY receiver,sender ORDER BY timestamp DESC LIMIT 1 

изменить порядок:

 ORDER BY timestamp DESC 

DESC для получения новой строки. AND ASC или NOT, по умолчанию ASC:

  (SELECT * FROM messages WHERE receiver = 13 OR sender = 13 GROUP BY receiver,sender ORDER BY id DESC) 

И УСТАНОВИТЕ ПРЕДЕЛ 1, 1 ПОСЛЕ ЗАКАЗА
я думаю, что вам это нужно
(receiver = 13 AND sender = 'usersender id' ) OR (receiver ='usersender id' AND sender = 13 ) Попробуйте!