SQL多列排序
我试图按SQL中的多个列进行排序,并按不同的方向排列。 column1
按降序排序,而column2
按升序排序。
我怎样才能做到这一点?
ORDER BY column1 DESC, column2
这种排序方式首先按column1
(降序)排序,然后按column2
(升序排序,这是默认值)排序,只要两行的column1
字段相等。
其他答案缺乏一个具体的例子,所以在这里:
鉴于以下People表:
FirstName | LastName | YearOfBirth
----------------------------------------
Thomas | Alva Edison | 1847
Benjamin | Franklin | 1706
Thomas | More | 1478
Thomas | Jefferson | 1826
如果您执行以下查询:
SELECT * FROM People ORDER BY FirstName DESC, YearOfBirth ASC
结果集将如下所示:
FirstName | LastName | YearOfBirth
----------------------------------------
Thomas | More | 1478
Thomas | Jefferson | 1826
Thomas | Alva Edison | 1847
Benjamin | Franklin | 1706
SELECT *
FROM mytable
ORDER BY
column1 DESC, column2 ASC
链接地址: http://www.djcxy.com/p/34267.html