CLÁUSULA ORDER BY

La cláusula ORDER BY suele escribirse al final de un mandato en SQL. Dicha cláusula establece un criterio de ordenación de los datos de la consulta, por los campos que se especifican en dicha cláusula. La potencia de ordenación de dicha cláusula radica en la especificación de los campos por los que se ordena, ya que el programador puede indicar cuál será el primer criterio de ordenación, el segundo, etc., así como el tipo de ordenación por ese criterio: ascendiente o descendiente.

 

(...) ORDER BY campo1 [ASC/DESC][,campo2 [ASC/DESC]...]

 

La palabra reservada ASC es opcional e indica que el orden del campo será de tipo ascendiente (0-9 A-Z), mientras que, si se especifica la palabra reservada DESC, se indica que el orden del campo es descendiente (9-0 Z-A). Si no se especifica ninguna de estas palabras reservadas, la cláusula ORDER BY toma, por defecto, el tipo ascendiente [ASC].

 

He aquí algunos ejemplos:

 

SELECT nombre, apellidos, telefono FROM clientes ORDER BY apellidos, nombre;

 

Crea una agenda telefónica de 'clientes' ordenada por 'apellidos' y 'nombre'.

 

SELECT * FROM pedidos ORDER BY fecha DESC;

 

Relación de 'pedidos' ordenados desde el más antiguo hasta el más moderno.

 

SELECT * FROM abonados ORDER BY apellidos, nombre, fecha_nacimiento DESC;

 

Relación de 'abonados' por 'apellidos' y 'nombre' ascendientemente, y por 'fecha_nacimiento' en orden descendiente (del más viejo al más joven).