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