【问题标题】:MYSQL SELECT last 5 results, then order those 5 by date?MYSQL SELECT 最后 5 个结果,然后按日期排序这 5 个?
【发布时间】:2018-07-29 01:25:34
【问题描述】:

我正在构建一个“评论”部分,我将在其中获取此表中的最后 5 个结果。

COMMENT_ID |     DATE       | COMMENT
....... BUNCH OF RESULTS HERE
111            2018-07-28     HELLO
112            2018-07-26     HEY
113            2018-07-25     HOW ARE YOU

显然,这张桌子要大得多。我想获取最近的 5 条评论(ID 为 113 到 109),所以我必须使用 ORDER BY COMMENT_ID DESC, LIMIT 5。

但是,当我遍历结果时,我希望这 5 个结果中最旧的评论最先显示,最新的评论最后显示。我似乎无法使用当前查询执行此操作,因为当我切换到 COMMENT_ID ASC 时,它显示评论 ID 1-5。

任何想法将不胜感激。

【问题讨论】:

    标签: php mysql mysqli sql-order-by


    【解决方案1】:

    您可以使用子查询来做到这一点: select * from (select * from comments order by comment_id desc limit 5) t1 order by date

    不确定您是否关心 id 或 date 作为订购...我的查询混合使用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-21
      • 1970-01-01
      • 2011-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多