Как выбрать последние записи с уникальным ключом с условием IN в MySQL?
Добрый день.
Есть 2 таблицы: Диалог и Сообщения
Надо выбрать нужные мне диалоги, а после последние сообщения из них (как во Вконтакте).
У меня есть массив с ID диалогов, но я не могу выбрать последние сообщения с помощью условия IN, потому что если будет 500 диалогов, придется к каждому грузить последнее сообщение.
Конкретная проблема в том, что если использовать IN + LIMIT + ORDER BY DESC, и если сообщения в одном диалоге идут подряд, то загрузятся сообщения только одного диалога.
Есть ли конструкции вида "Обычный SELECT + SELECT DISTINCT"?
Или "SELECT `id`, UNIQUE('conversation')"?
Как мне буквально в паре запросов выбрать последние записи из базы с уникальным ключом с использованием условия IN или подобных?