Эффективный ли запрос я составил подскажите? в общих словах.
может по другому надо было?
Задача на странице сообщений пользователя
нужно выводить по одному последнему сообщению от всех других пользователей которые ему написали.
a - тот кто отправил сообщение
b - текущий пользователь, тот которому отправлено сообщение
date - тата отправки
text - сообщение
SELECT `a`, `b`, `date`, `text`
FROM `table`
WHERE (`a`, `b`, `date`) IN (
SELECT `a`, `b`, MAX(`date`)
FROM `table`
WHERE `b` = 6
GROUP BY `a`
)
ORDER BY `date` DESC
здесь `b` = 6 - id текущего пользователя, для которого нужно показать пришедшее ему последние сообщения...