我有一个有3列的表。 (日,月,年)
该陈述按时间顺序给出结果。
SELECT * FROM table WHERE = 'condition' ORDER BY year, month, day
我怎样才能按相反的顺序得到它?
答案 0 :(得分:4)
您需要在查询中反转排序顺序:
SELECT * FROM table WHERE = 'condition' ORDER BY year DESC, month DESC, day DESC
但是,为年,月和日分别设置列会适得其反,因为所有这些列都可以用单个DATE
类型列表示。这可以编入索引,并且在实践中要快得多:
SELECT * FROM table WHERE ... ORDER BY date_column DESC
答案 1 :(得分:1)
试试这个:
SELECT * FROM table
WHERE = 'condition'
ORDER BY year DESC, month DESC, day DESC
答案 2 :(得分:1)
您可以使用ASC
或DESC
个关键字。
https://dev.mysql.com/doc/refman/5.0/en/order-by-optimization.html
例如:
SELECT *
FROM table WHERE = 'condition'
ORDER BY year DESC,
month DESC,
day DESC