mysql - 在 MySQL 中排序结果不同

标签 mysql sql

我有一个包含 3 列的表格。 (日、月、年)

此语句按时间顺序给出结果。

SELECT * FROM table WHERE = 'condition' ORDER BY year, month, day

如何以相反的顺序获取它?

最佳答案

您需要在查询中反转排序顺序:

SELECT * FROM table WHERE = 'condition' ORDER BY year DESC, month DESC, day DESC

但是,为年、月和日设置单独的列会适得其反,因为所有这些都可以用单个 DATE 类型的列表示。这可以被索引并且在实践中要快得多:

SELECT * FROM table WHERE ... ORDER BY date_column DESC

关于mysql - 在 MySQL 中排序结果不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18837126/

相关文章:

php - 如果 user_id 在表中是唯一的,则插入记录,如果不是,则更新列

sql - 如何在触发器中引用自定义类型行

mysql - 找不到mySQL请求错误

php - PHP/MySQL 下拉搜索中的可选变量

mysql - Neo4j 可以比 MySQL 更快地处理一个简单的现实生活场景

java - 如何从两个 HTML 表单/子表单向 MySql 数据库插入数据

MySQL View 使用 AND 返回更多结果?

sql - 评级系统的数据库设计

sql - 无法通过 grails 应用程序插入 MSSQL

mysql - 为什么 Parse.com 上的默认用户数据库称为 "_User"?