SELECT
ft.threadID,
ft.subject,
ft.userid,
m1.usr,
ft.room,
ft.last_post,
ft.readers,
ft.answers,
ft.smiley,
fp.id,
fp.userid,
fp.datum,
m2.usr,
ft.poll,
ft.locked
FROM
forum_topics ft
inner join forum_posts fp on fp.threadID = ft.threadID
inner join members m1 on ft.userid = m1.id
inner join members m2 on m2.id = fp.userid
inner join forum_posts fp2 on fp2.threadID = ft.threadID
WHERE
fp.userid = 1
group by ft.threadID,
ft.subject,
ft.userid,
m1.usr,
ft.room,
ft.last_post,
ft.readers,
ft.answers,
ft.smiley,
fp.id,
fp.userid,
fp.datum,
m2.usr,
ft.poll,
ft.locked
having fp.datum = min(fp2.datum)
ORDER BY
ft.room asc, ft.last_post desc limit 0,20
Samma teknik på fråga 2.
