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

标签 php mysql mysqli sql-order-by

我正在构建一个“评论”部分,我将在其中获取此表中的最后 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 按日期排序

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

关于php - MYSQL SELECT 最后 5 个结果,然后按日期对这 5 个结果进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51576503/

相关文章:

php - echo 图像-PHP和JSON-Twitter API

php - 优化 MYSQL COUNT ORDER BY 查询

php - 如何使用 jqgrid 发布数据中的 PHP 数组重新格式化 m/d/y 中的日期?

php - UPDATE 查询有问题

java - 无法获取连接,DataSource 无效 : "java. sql.SQLException: 无法创建 PoolableConnectionFactory(通信链接失败

mysql - 使用按键加速 SELECT DISTINCT

php - fatal error : Call to a member function fetch_assoc() on a non-object

php - Mysql查询以搜索圆形 float

php - 表单上的上传和提交按钮

mysql - 我如何查询拆分为 2 个较小表的表?联盟?看法?