我正在建立一个基本论坛,我想抓住创建的主题列表,但也从帖子表中抓取most recent post
,这样我就可以显示last reply and time of last reply
我的尝试如何导致重复结果,我尝试了LEFT JOIN
和INNER JOIN
具有相同的结果。我希望有人知道解决方案。
这是我的尝试:
SELECT t1.username as thread_starter,
t2.username as last_reply_username,
t1.thread_time as thread_start,
t2.post_time as last_reply_time,
t1.title,
t1.sticky
FROM threads t1
INNER JOIN posts t2
ON t1.id = t2.threadid
ORDER BY t1.sticky DESC, t2.post_time DESC
有没有人知道如何解决问题所以它只会从post表中获取与每个线程相关的最后和最近的帖子而不返回重复的线程?
答案 0 :(得分:2)
下面的查询背后的想法是它从子查询中的每个post_time
的{{1}}表中找到最新的帖子(post
)。然后它连接回原始表threadid
和post
表。
threads