SQLite ORDER BY 语句
SQLite 的 ORDER BY 语句用于对查询结果进行排序。排序可以是升序(ASC)或降序(DESC)。默认情况下,如果不指定排序方式,ORDER BY 会以升序对结果进行排序。
语法
SQLite ORDER BY 语句的基本语法如下:
sql
SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC;
column1, column2, ...:指定要查询的列。table_name:指定要查询的表名。ASC:表示升序排序(默认)。DESC:表示降序排序。
示例
假设我们有一个名为 employees 的表,其中包含以下数据:
| id | name | salary | |----|-------|--------| | 1 | Alice | 50000 | | 2 | Bob | 60000 | | 3 | Carol | 70000 |
升序排序
以下 SQL 语句以升序对 salary 列进行排序:
sql
SELECT * FROM employees
ORDER BY salary ASC;
执行上述语句后,结果将按 salary 列的升序排列:
| id | name | salary | |----|-------|--------| | 1 | Alice | 50000 | | 2 | Bob | 60000 | | 3 | Carol | 70000 |
降序排序
以下 SQL 语句以降序对 salary 列进行排序:
sql
SELECT * FROM employees
ORDER BY salary DESC;
执行上述语句后,结果将按 salary 列的降序排列:
| id | name | salary | |----|-------|--------| | 3 | Carol | 70000 | | 2 | Bob | 60000 | | 1 | Alice | 50000 |
多列排序
你还可以按多列进行排序。以下 SQL 语句首先按 name 列升序排序,然后在 name 列相同的行中按 salary 列降序排序:
sql
SELECT * FROM employees
ORDER BY name ASC, salary DESC;
执行上述语句后,结果将按 name 列升序和 salary 列降序排列:
| id | name | salary | |----|-------|--------| | 1 | Alice | 50000 | | 3 | Carol | 70000 | | 2 | Bob | 60000 |
结论
SQLite 的 ORDER BY 语句是一个非常有用的工具,它允许你按一个或多个列对查询结果进行排序。通过灵活地使用 ASC 和 DESC 关键字,你可以轻松地控制结果的排序方式。