PHP + MySQL论坛显示

时间:2012-03-10 09:46:18

标签: mysql

我目前正在构建一个简单的PHP + MySQL论坛,但我遇到的问题是以正确的格式显示信息。

我当前的SQL代码是

SELECT forum_posts.catId, forum_posts.postId, forum_posts.date, forum_posts.message,
    forum_posts.userId, users.userId, users.username, forum_thread.threadId, forum_thread.subjectTitle
    FROM forum_posts
    LEFT JOIN forum_thread ON forum_posts.threadId = forum_thread.threadId
    LEFT JOIN users ON users.userId = forum_posts.userId
    GROUP BY forum_posts.catId
    ORDER BY forum_posts.postId DESC, forum_posts.date DESC, forum_posts.catId ASC

我遇到的问题是它会带回正确类别中的所有内容,但它会带回类别的第一个结果而不是最后一个结果。

我只想让代码显示每个类别中的最后一个回复。

非常感谢任何帮助,谢谢。

1 个答案:

答案 0 :(得分:1)

您的查询应返回一系列行。尝试将结果限制为1个元素。如果您对结果进行降序排序,您将获得最后一项。

 ORDER BY ... DESC LIMIT 1

我不确定您是否在postIddate找到了最新的条目。如果按日期找到,则必须使用date开始分组。 但是我不明白为什么你只是为了获得一个数据集而对结果进行排序。

 ORDER BY forum_posts.date DESC LIMIT 1;
这是你想要的吗?此外,这可以帮助您:Select last row in MySQL