php Mysql Группирование и упорядочение пользовательских сообщений вместе

Таблица PHP Mysql: сообщения

id sender receiver time_sent Message SendDel RecDel 1 1 3 2011-08-17 14:00:00 [text] 0 0 2 3 1 2011-08-17 15:00:00 [text] 0 0 3 2 4 2011-08-18 14:19:28 [text] 1 0 4 4 2 2011-08-18 15:19:28 [text] 0 0 

Цель состоит в том, чтобы получить сообщение с наибольшим значением (MAX) и группировать сообщения на основе отправителя, получателя. Таким образом, идентификаторы сообщений 1 и 2 будут группироваться вместе, а id 3 и 4 будут группироваться вместе.

Пример: вошел в систему userid = 2.

 id sender receiver time_sent Message SendDel RecDel 4 4 2 2011-08-18 15:19:28 [text] 0 0 

Я не уверен, почему, но мой запрос не группирует все сообщения вместе. Вот мой запрос:

 SELECT id, sender, receiver, MAX(time_sent), MAX(message) FROM Messages WHERE sender='$userid' OR receiver = '$userid' Group By sender,receiver Order BY time_sent DESC 

Любые решения?

Вы хотите:

Таким образом, идентификаторы сообщений 1 и 2 будут группироваться вместе, а id 3 и 4 будут группироваться вместе.

Вы должны будете сделать какое-то волшебство в клаузуле, чтобы это произошло.

 SELECT id, sender, receiver, MAX(time_sent), MAX(message) FROM Messages WHERE sender='$userid' OR receiver = '$userid' Group By (if(sender > receiver, sender, receiver)) , (if(sender > receiver, receiver, sender)) Order BY time_sent DESC