2.5.4. Ordenacion de los datos obtenidos en respuesta a consultas
2.5.4. Ordenacion de los datos obtenidos en respuesta a consultas Dataprix 21 Septiembre, 2009 - 10:39Si se desea que, al hacer una consulta, los datos aparezcan en un orden determinado, es preciso utilizar la cláusula ORDER BY en la sentencia SELECT, que presenta el siguiente formato:
SELECT nombre_columnas_a seleccionar
FROM tabla_a_consultar
[WHERE condiciones]
ORDER BY columna_según_la_cual_se_quiere_ordenar [DESC]
[, col_ordenación [DESC]...];
Consulta a BDUOC con respuesta ordenada
Imaginemos que queremos consultar los nombres de los empleados ordenados según el sueldo que ganan, y si ganan el mismo sueldo, ordenados alfabéticamente por el nombre:
SELECT codigo_empl, nombre_empl, apellido_empl, sueldo
FROM empleados
ORDER BY sueldo, nombre_empl;
Esta consulta daría la respuesta siguiente:
codigo_emple | nombre_empl | apellido_empl | sueldo |
---|---|---|---|
6 | Laura | Tort | 30.000 |
8 | Sergio | Grau | 30.000 |
5 | Clara | Blanc | 40.000 |
7 | Rogelio | Salt | 40.000 |
3 | Ana | Ros | 70.000 |
4 | Jorge | Roca | 70.000 |
2 | Pedro | Mas | 90.000 |
1 | María | Puig | 100.000 |
Si no se especifica nada más, se seguirá un orden ascendente, pero si se desea seguir un orden descendente es necesario añadir DESC detrás de cada factor de ordenación expresado en la cláusula ORDER BY:
ORDER BY columna_ordenación [DESC] [, columna [DESC] ...];
También se puede explicitar un orden ascendente poniendo la palabra clave ASC (opción por defecto).