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

上一篇: SQL multiple column ordering

下一篇: How would you do a "not in" query with LINQ?