English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

SQLite ORDER BY 子句

SQLite ORDER BY子句用于根据一个或多个列以升序或降序对数据进行排序。

语法

以下是ORDER BY子句的基本语法。

SELECT column-list FROM table_name [WHERE condition] [ORDER BY column1, column2, .. columnN] [ASC | DESC];

您可以在ORDER BY子句中使用多个列。确保要用于排序的任何列,该列都应在column-list中可用。

在线示例

考虑带有以下记录的COMPANY表。

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           ポール        32          カリフォルニア  20000.0
2           アレン       25          テキサス       15000.0
3           テディ       23          ノルウェイ      20000.0
4           マーク        25          リッチ-モンド   65000.0
5           デイビッド       27          テキサス       85000.0
6           キム         22          サウス-ホール  45000.0
7           ジェームズ       24          ヒューストン     10000.0

下面是一个示例,它将按SALARY降序对结果进行排序。

sqlite> SELECT * FROM COMPANY ORDER BY SALARY ASC;

以下の結果が得られます。

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
7           ジェームズ       24          ヒューストン     10000.0
2           アレン       25          テキサス       15000.0
1           ポール        32          カリフォルニア  20000.0
3           テディ       23          ノルウェイ      20000.0
6           キム         22          サウス-ホール  45000.0
4           マーク        25          リッチ-モンド   65000.0
5           デイビッド       27          テキサス       85000.0

下面是一个示例,它将按NAME和SALARY的降序对结果进行排序。

sqlite> SELECT * FROM COMPANY ORDER BY NAME, SALARY ASC;

以下の結果が得られます。

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
2           アレン       25          テキサス       15000.0
5           デイビッド       27          テキサス       85000.0
7           ジェームズ       24          ヒューストン     10000.0
6           キム         22          サウス-ホール  45000.0
4           マーク        25          リッチ-モンド   65000.0
1           ポール        32          カリフォルニア  20000.0
3           テディ       23          ノルウェイ      20000.0

以下是一个示例,它将按照NAME的降序对结果进行排序。

sqlite> SELECT * FROM COMPANY ORDER BY NAME DESC;

以下の結果が得られます。

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
3           テディ       23          ノルウェイ      20000.0
1           ポール        32          カリフォルニア  20000.0
4           マーク        25          リッチ-モンド   65000.0
6           キム         22          サウス-ホール  45000.0
7           ジェームズ       24          ヒューストン     10000.0
5           デイビッド       27          テキサス       85000.0
2           アレン       25          テキサス       15000.0