SQLite Order By
La cláusulaORDER BYde SQLite se utiliza para ordenar los datos en orden ascendente o descendente según una o más columnas.
Sintaxis
La sintaxis básica de la cláusula ORDER BY es la siguiente:
SELECT column-list FROM table_name [WHERE condition] [ORDER BY column1, column2, .. columnN] [ASC | DESC];
- ASCValor predeterminado, de menor a mayor, orden ascendente
- DESCDe mayor a menor, orden descendente
Puede utilizar varias columnas en la cláusula ORDER BY, asegurándose de que las columnas de ordenación utilizadas estén en la lista de columnas:
SELECT
select_list
FROM
table
ORDER BY
column_1 ASC,
column_2 DESC;
Si no se especifica la regla de ordenación después de column_1 y column_2, el valor predeterminado es ASC (ascendente). La declaración anterior lee en orden ascendente por column_1 y descendente por column_2, equivalente a la siguiente declaración:
SELECT
select_list
FROM
table
ORDER BY
column_1,
column_2 DESC;
Ejemplo
Supongamos que la tabla COMPANY tiene los siguientes registros:
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
A continuación se muestra un ejemplo que ordenará los resultados por SALARY en orden ascendente:
sqlite> SELECT * FROM COMPANY ORDER BY SALARY ASC;
Esto producirá el siguiente resultado:
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
A continuación se muestra un ejemplo que ordenará los resultados por NAME y SALARY en orden ascendente:
sqlite> SELECT * FROM COMPANY ORDER BY NAME, SALARY ASC;
Esto producirá el siguiente resultado:
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
A continuación se muestra un ejemplo que ordenará los resultados por NAME en orden descendente:
sqlite> SELECT * FROM COMPANY ORDER BY NAME DESC;
Esto producirá el siguiente resultado:
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.0Otras extensiones