Я уже посетил MySQL order by before group by для отдельной группы. Он работает нормально. У меня проблема с двумя группами по столбцам.MySQL: несколько групп по заказу Desc Order
У меня есть таблица под названием «сообщения». Сообщения являются комментариями Пользователя Сообщений
id | posts_id | from_user_id | to_user_id | message_description | created_at
-----------------------------------------------------------------------------
1 1 1 2 test1 2016-09-06 10:00:00
2 1 1 2 test2 2016-09-06 11:00:00
3 1 4 2 test3 2016-09-06 09:00:00
4 1 4 2 test4 2016-09-06 15:00:00
5 2 1 2 test1 2016-09-06 10:00:00
6 2 1 2 test2 2016-09-06 11:00:00
7 2 4 2 test3 2016-09-06 09:00:00
8 2 4 2 test4 2016-09-06 15:00:00
Результата результатов запроса должны быть
id | posts_id | from_user_id | to_user_id | message_description | created_at
-----------------------------------------------------------------------------
2 1 1 2 test2 2016-09-06 11:00:00
4 1 4 2 test4 2016-09-06 15:00:00
6 2 1 2 test2 2016-09-06 11:00:00
8 2 4 2 test4 2016-09-06 15:00:00
Что я пытаюсь получить сообщение мудрого & пользователя мудрым свои последние сообщения.
Я дал судимое ниже, но это не дает результата в правильном порядке.
SELECT *
FROM messages
WHERE to_user_id = '2'
GROUP BY posts_id DESC,
from_user_id
ORDER BY id DESC
@Strawberry i уже посетил этот пост. Но только для одной группы, я должен использовать 2 группы по столбцам, чтобы не получить ответ –
Хм. Я не думаю, что это группа по порядку, потому что требование состоит в том, чтобы получить последнюю запись per_user_id. Попробуйте этот SELECT t1. * ОТ сообщений t1 WHERE t1.id = (выберите max (id) из сообщений t2, где t2.posts_id = t1.posts_id и t2.from_user_id = t1.from_user_id) –
У вас есть 3 пользователя, но вы только кажется, хотят возвращать сообщения, относящиеся к одному из них (пользователь 2) – Strawberry