MySQL: получить стартер темы и последний постер в одном запросе
У меня были некоторые проблемы с получением как темы, так и самого последнего постера в одном запросе. Мои таблицы выглядят так:
описание идентификатора forum_categories
название_форума ID темы
forum_posts id thread_id user_id Сообщение создано, отредактировано
Я использую следующий запрос, чтобы получить все детали, которые мне нужны, за исключением user_id человека, который опубликовал последнее сообщение в определенной теме.
SELECT T.id, T.title, MAX(P.created) AS lastPostDate, COUNT(P.id) AS amountOfPosts, M.MemberID, M.Username
FROM forum_threads T
JOIN forum_posts P
ON T.id = P.thread_id
JOIN member M
ON P.user_id = M.MemberID
WHERE category_id = 1
GROUP BY T.id
ORDER BY lastPostDate DESC
Пример результата, который я получаю:
id: 19
title: ABCDEFGHIJKLMNOP
lastPostDate: 2014-04-25 13:42:53
amountOfPosts: 25
MemberID: 1
Username: monkeyboy
Я могу также получить информацию о последнем плакате и получить вместе с деталями из вышеупомянутого запроса, используя union, но у меня есть ощущение, что должен быть лучший способ сделать это. Так все равно может помочь мне?
Спасибо!