Задать вопрос
@kirillantv

Как сгруппировать сообщения по теме, отправителю и получателю?

Добрый день, господа! Ломаю голову и всё никак не могу сломать. А задача вроде не такая сложная.
В таблице message есть следующие колонки id, object_id, from, to. Хочу одним запросом вывести последние сообщения диалогов. В свою очередь, диалоги группируются не только по from и to, но и по object_id. То есть, если у нас одни и те же собеседники, но разные темы, то это будут разные диалоги. Что-то похожее есть в gmail.
Нагуглил примеры на группировку по отправителю и получателю, но как ещё прицепить тему, не могу понять.
Заранее спасибо!
  • Вопрос задан
  • 463 просмотра
Подписаться 3 Простой Комментировать
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 1
qonand
@qonand
Software Engineer
Насколько я понимаю message это именно таблица сообщений а не диалогов, в самом простом случае последние сообщения можно выбрать так
SELECT
	*
FROM
	`messages`
WHERE
	`id` IN (
		SELECT
			max(`id`)
		FROM
			`messages`
		GROUP BY
			`object_id`,
			`from`,
			`to`
	)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы