我正在写一个bbs论坛 很像这个csdn的一个小网站 有一个需求如下 大家请看图
右边那个是主题 左边那个是回帖 现在就是想求一个sql语句 提取出每个帖子的最后更新的那个回帖 以这些回帖组成一个结果集 这个最后更新的回帖应该是最近一次的发表日期reply_article.publishdate确定 排序方式应该是order by article.id就和csdn网站上面的每一页帖子那个最后更新时间那个差不多各位还有什么不明白的吗?SQL

解决方案 »

  1.   

    按回复时间降序,取第一条select top 1 * from XX order by publishdate desc
      

  2.   

    抱歉  没说清楚  数据库是mysql
      

  3.   

    按照的意思话,也就是article表中的publishdate每回复一次就是会更新一次。
    可以这样
    select count(ra.article_id)(统计结果集),a.publishdate(这是最后的回贴时间) from article a,reply_articel ra where a.id = ra.article_id ;
    这句话的意思就是说,根据where后面的条件查每个贴子下面总共的回贴数量,和每个帖子最后回复时间。
    不明白可以留言。
      

  4.   


    select A.username_id,RA.username_id,RA.article_id,RA.floor_num,RA.context,RA.reply_time
    from reply_article RA
    inner join article A on RA.article_id=A.id and RA.reply_time=A.publishdate
    order by RA.article_id