php - MySQL 和 PHP 中按日期排序并重视今天的日期

标签 php mysql sql

我想按日期下订单以获取用户的评论,但我想重视今天的日期

如果今天有评论,请先显示它,然后对其余评论进行排序并注明日期。

我尝试这样做,但总是给我一个语法错误

SELECT *
FROM comment
ORDER BY IF(`DATE_TIME_COMMENT` = CURRENT_DATE())

有什么解决办法吗?

最佳答案

首先按CASE排序,如果date_time_comment等于current_date(),则返回“较低的值”,否则返回“较高的值”。然后,第二步,按date_time_comment排序。

SELECT *
       FROM comment
       ORDER BY CASE date_time_comment
                  WHEN current_date()
                    THEN 0
                  ELSE
                    1
                END,
                date_time_comment;

(如果您想首先获得最新的评论,可以在 ORDER BY 子句中的 date_time_comment 之后添加 DESC。)

关于php - MySQL 和 PHP 中按日期排序并重视今天的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51199410/

相关文章:

php - 在 Web 应用程序数据库中跟踪进度或级别的正确方法

php - jquery 循环不适用于 php 数据

mysql - MYSQL使用LEFT OUTER Join查找多个表的字段求和

asp.net - 将日期/时间插入 Access 数据库

php - 使用php将excel表上传到mysql

javascript - 如何使用 While 循环使用 DataTables 显示 MYSQL 数据

php - 用于时间戳比较的正确 MYSQL 语法和具有某些排除项的不同结果

mysql - Mojolicious 数据库插件 - 帮助程序错误

MySql 全文搜索对于短单词不正确

sql - 如何在 postgresql 和 rails 3 中按月分组