Делаю систему сообщений на своем сайте. Система выглядит примерно как в вк. Уже написал вывод диалогА пользователя с другим пользователем, и отправка сообщений с этим пользователем.
Теперь мучаюсь с выводом всех переписок определенного пользователя. но... выводить все диалоги я хочу по последним сообщением.
К примеру:
сообщение 1: 1 пользователь - 2 пользователь - текст1 дата 0000-00-00 00:00:00
сообщение 2: 2 пользователь - 1 пользователь - текст2 дата 0000-00-00 00:00:01
сообщение 3: 1 пользователь - 2 пользователь - текст3 дата 0000-00-00 00:00:02
сообщение 4: 1 пользователь - 3 пользователь - текст4 дата 0000-00-00 00:00:10
сообщение 5: 3 пользователь - 1 пользователь - текст5 дата 0000-00-00 00:00:11
сообщение 6: 3 пользователь - 1 пользователь - текст6 дата 0000-00-00 00:00:12
в данном случае мне нужно вывести диалоги первого пользователя по последним сообщениям.
ТОЕСТЬ должно получиться так:
сообщение 3: 1 пользователь - 2 пользователь - текст3 дата 0000-00-00 00:00:02
сообщение 6: 3 пользователь -1 пользователь - текст6 дата 0000-00-00 00:00:12
Выкладываю скрин как это должно выглядеть

Что пробовал я?
`users_1`='14' OR `users_2`='14' где 14 это id пользователя которому нужно вывести его диалоги с теми пользователями с которыми он общается
SELECT MAX(`data`), MAX(`text`), MAX(`id`),max(`users_1`),max(`users_2`) FROM `mes` WHERE `users_1`='14' OR `users_2`='14' GROUP BY CONCAT(LEAST(`users_1`,`users_2`),'-',GREATEST(`users_1`,`users_2`))
В данном случае он не выводит последний текст и users_1 и users_2.
Прошу помочь.. Ибо я уже сломал голову..