SQL 获取帖子的最新评论日期 - 论坛
Posted
技术标签:
【中文标题】SQL 获取帖子的最新评论日期 - 论坛【英文标题】:SQL to get Latest comment date for a post - Discussion Forum 【发布时间】:2016-01-02 00:10:35 【问题描述】:我正在开发一个讨论论坛网站。当您打开论坛时,网络服务会获取所有活动帖子。
标题、评论数、近期活动(最新评论的日期)、发布者、状态。
我能够获得上述所有数据,除了最近的活动。
SELECT
`post`.`id`,
`post`.`title`,
`post`.`description`,
`post`.`created`,
COUNT(`comment_text`) AS `num_comments`,
`users`.`name`,
`users`.`nick_name`,
`users`.`profile_picture`
FROM `post`
JOIN `users` ON `users`.`id` = `post`.`user_id`
JOIN `posttype` ON `posttype`.`id` = `post`.`post_type_id`
LEFT JOIN `comments` ON `comments`.`post_id` = `post`.`id`
WHERE `post_type` = 'Discussion'
GROUP BY `post`.`id`
如何修改此 SQL 以获得最新的评论日期?
comment_date
在comments
表中
【问题讨论】:
您可以使用 ORDER BYcomments
.comment_id
DESC
【参考方案1】:
使用 MAX(comment_date)
与使用 COUNT(comment_text)
的方式相同,以获取每个 GROUP BY post.id
组中所有 cmets 的最新日期。
小心,您正在利用 mysql 非标准扩展 GROUP BY
。在您的情况下,扩展可能会导致您的结果集包含来自users
表的您无法预测的信息。读这个。 http://dev.mysql.com/doc/refman/5.6/en/group-by-handling.html
【讨论】:
以上是关于SQL 获取帖子的最新评论日期 - 论坛的主要内容,如果未能解决你的问题,请参考以下文章
⭐基于bootstap-Jquery-JSP-Servlet-mysql⭐博客项目——后台论坛管理demo
⭐基于bootstap-Jquery-JSP-Servlet-mysql⭐博客项目——后台论坛管理demo