开发学院

您的位置:首页>教程>正文

教程正文

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子句中可以使用多个列。确保无论您使用什么列进行排序,该列都应该在列列表中可用。

例子

  假设COMPANY表包含如下数据.

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
1           Paul        32          California  20000.0
2           Allen       25          Texas       15000.0
3           Teddy       23          Norway      20000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0

  下面的例子,将按SALARY升序对结果进行排序。

sqlite> SELECT * FROM COMPANY ORDER BY SALARY ASC;

  这将产生以下结果。

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
7           James       24          Houston     10000.0
2           Allen       25          Texas       15000.0
1           Paul        32          California  20000.0
3           Teddy       23          Norway      20000.0
6           Kim         22          South-Hall  45000.0
4           Mark        25          Rich-Mond   65000.0
5           David       27          Texas       85000.0

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

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

  这将产生以下结果。

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
2           Allen       25          Texas       15000.0
5           David       27          Texas       85000.0
7           James       24          Houston     10000.0
6           Kim         22          South-Hall  45000.0
4           Mark        25          Rich-Mond   65000.0
1           Paul        32          California  20000.0
3           Teddy       23          Norway      20000.0

  下面的示例,它将按NAME.降序对结果进行排序。

sqlite> SELECT * FROM COMPANY ORDER BY NAME DESC;

  这将产生以下结果。

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
3           Teddy       23          Norway      20000.0
1           Paul        32          California  20000.0
4           Mark        25          Rich-Mond   65000.0
6           Kim         22          South-Hall  45000.0
7           James       24          Houston     10000.0
5           David       27          Texas       85000.0
2           Allen       25          Texas       15000.0