MYSQL SELECT 最后 5 个结果,然后按日期对这 5 个进行排序?

MYSQL SELECT last 5 results, then order those 5 by date?

我正在构建一个 "Comments" 部分,我将在其中获取此 table 中的最后 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

table 显然要大得多。我想获取最近的 5 个评论(ID 的 113 到 109),所以我必须使用 ORDER BY COMMENT_ID DESC, LIMIT 5.

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

如有任何想法,我们将不胜感激。

您可以使用子查询来完成: select * from (select * from comments order by comment_id desc limit 5) t1 order by date

不确定您是否关心 id 或 date 作为排序...我的查询混合了。