📜  T-SQL-ORDER BY子句(1)

📅  最后修改于: 2023-12-03 15:05:27.659000             🧑  作者: Mango

T-SQL ORDER BY子句

在使用T-SQL编写查询语句时,经常需要按照特定的顺序对结果进行排序。这时可以使用ORDER BY子句来实现。

语法
SELECT 列名称
FROM 表名称
ORDER BY 列名称 [ASC | DESC]
参数说明
  • 列名称: 需要按照其值进行排序的列名。
  • 表名称: 需要查询的表名。
  • ASC: 按升序(从小到大)排序,默认的排序方式。可选参数。
  • DESC: 按降序(从大到小)排序。可选参数。
示例

假设我们有一个名为Employees的表,其中包含了IDNameSalary三个列。我们希望按照Salary列的值进行降序排序,并返回NameSalary列的值。

SELECT Name, Salary
FROM Employees
ORDER BY Salary DESC;

以上查询语句会返回一个按照Salary列降序排列的结果集,包含了每个员工的姓名和薪水。

多列排序

如果需要按照多个列进行排序,可以在ORDER BY子句中使用逗号分隔的多个列名称。

SELECT Name, Age, Salary
FROM Employees
ORDER BY Salary DESC, Age ASC;

以上查询语句会首先按照Salary列进行降序排列,对于相同的薪水再按照Age列进行升序排列。

NULL值排序

默认情况下,NULL值会被排在排序结果的最后。如果希望将NULL值排在最前面,可以使用NULLS FIRST,如果希望将NULL值排在最后面,可以使用NULLS LAST

SELECT Name, Age
FROM Employees
ORDER BY Age DESC NULLS LAST;

以上查询语句会按照Age列的值进行降序排序,NULL值会排在排序结果的最后。

结论

ORDER BY子句是T-SQL中用于对查询结果进行排序的重要工具。通过指定要排序的列名称和排序方式,可以轻松地对查询结果进行排序操作。