En la sección anterior vimos como agrupar datos. En esta sección veremos cómo mostrar esos mismos resultados pero en orden.
Combinando las cláusulas GROUP BY y ORDER BY en una sentencia SELECT.
En una sentencia SELECT la cláusula ORDER BY debe aparecer siempre después de la cláusula GROUP BY, recuerde que la primera sirve para mostrar los resultados ordenados y la segunda para agrupar los resultados.
Usaremos una consulta que vimos en la sección anterior:
En dicha consulta los resultados de la columna “núm productos” aparece en desorden. La modificaremos un poco y agregaremos la cláusula ORDER BY para mostrar un mejor resultado.
Como puede observar en la sentencia, la cláusula ORDER BY que es la encargada de ordenar los resultados, aparece después de la cláusula GROUP BY. Esto es lógico porque GROUP BY necesita conocer los resultados que va a ordenar.
También puedes observar que a diferencia del ORDER BY que usamos en la sección “Cómo ordenar los resultados de una consulta” de este mismo curso, donde especificábamos el nombre de un campo o columna para indicarle por cual de ellos ordenar, aquí usamos un número. ¿Qué representa ese número? Representa el número de la columna de la lista de columnas en la cláusula SELECT numerándolas de izquierda a derecha comenzando por el número 1. En nuestro ejemplo el 2 representa la segunda columna en los resultados, es decir la columna “núm. productos”.
Las siguientes sentencias son equivalentes a la anterior:
SQLite permite especificar la columna de ordenamiento tanto por el número de columna como vimos en la primera sentencia donde usamos el ORDER BY, por el contenido de la columna, en este caso la función COUNT(), como en el segundo ejemplo o por el alias de la columna, somo se muestra en la última sentencia arriba.
En caso de otros motores de datos, es posible que no soporte todos estos casos. Consulte la documentación específica de cada uno de esos motores de base de datos.
Hasta el momento sólo hemos hecho consultas sobre una tabla, pero en la práctica, las bases de datos relacionales, como su nombre lo indica, trabaja con relaciones, es decir, tablas relacionadas. En la siguiente sección veremos como descargar una base de datos más real, con tablas relacionadas, que nos servirán en las próximas prácticas.
¡Hasta pronto!
[…] la próxima sección vamos a combinar las cláusulas ORDER BY y GROUP BY para mostrar resultados más presentables. […]
[…] la sección anterior vimos como agrupar datos y ordenar resultados . Hemos hablado de que SQLite es una base de datos […]