📅  最后修改于: 2023-12-03 15:20:17.012000             🧑  作者: Mango
在SQL中,我们可以按照一个或多个列对查询结果进行排序。按多列排序可以更准确地控制查询结果的顺序。
ORDER BY是用于排序的SQL关键字。我们可以将ORDER BY用于SELECT语句的末尾来对查询结果进行排序。
语法如下:
SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC;
column1, column2, ...是要排序的列名,ASC表示升序排序,DESC表示降序排序。默认情况下,如果不指定ASC或DESC,则按升序排序。
示例代码:
SELECT name, age, salary
FROM employees
ORDER BY salary DESC, age ASC;
这个查询将按照薪资从高到低排序,如果两个员工的薪资相同,则按照年龄从小到大排序。
如果需要按多个列排序,只需要在ORDER BY子句中添加多个列即可。SQL将按照列的顺序优先考虑第一列,如果第一列相同,则考虑第二列,依此类推。
示例代码:
SELECT name, age, salary
FROM employees
ORDER BY salary DESC, age ASC, name ASC;
这个查询将按照薪资从高到低排序,如果两个员工的薪资相同,则按照年龄从小到大排序,如果年龄也相同,则按照姓名从A到Z排序。
通过ORDER BY子句,我们可以轻松地按照一个或多个列对查询结果进行排序,以更准确地控制查询结果的顺序。无论是升序还是降序排序,都可以使用ASC和DESC关键字来指定。