الاستيلاء على آخر مشاركة آخر من جميع الموضوعات في فئة من PHPBB
سؤال
أريد فقط الاستيلاء على آخر مشاركة من جميع المواضيع في فئة (الفئة-> المنتدى-> الموضوع-> المشاركة) من قاعدة بيانات PHPBB في استعلام واحد. حاليا لقد طهي هذا الأمر، لكنه يعود فقط أول وظيفة، وليس الأخير.
SELECT *, MAX(p.post_id)
FROM phpbb_forums f, phpbb_topics t, phpbb_posts p
WHERE f.parent_id IN (<categories>)
AND t.forum_id = f.forum_id
AND p.topic_id = t.topic_id
GROUP BY p.topic_id
هل يعرف أي شخص كيفية القيام بذلك بشكل صحيح؟
المحلول
SELECT *
FROM phpbb_forums f
JOIN phpbb_topics t
ON t.forum_id = f.forum_id
JOIN phpbb_posts p
ON p.post_id =
(
SELECT pi.post_id
FROM phpbb_posts pi
WHERE pi.topic_id = t.topic_id
ORDER BY
pi.date DESC
LIMIT 1
)
WHERE f.parent_id IN (…)
لا تنتمي إلى StackOverflow