[ Foro de SQL (y MySQL) ]

Ejercicio 1.8 Curso de SQL

31-Aug-2016 01:22
george gonzalez
1 Respuestas

Primero que nada te envió un saludo Nacho, estoy leyendo tu curso online de sql y se me presento una duda en el Ejercicio 1.8 del primer capitulo que es el siguiente :

1.8. Muestra el nombre y la población de todas las ciudades, ordenadas de la más poblada a la menos poblada. Si dos o más ciudades tienen misma cantidad de habitantes, se mostrarán ordenadas de la A a la Z.

La duda es en esta parte del enunciado "Si dos o más ciudades tienen la misma cantidad de habitantes, se mostrarán ordenadas de la A a la Z", no he podido hacer esta parte del ejercicio, según entiendo hay que hacer una comparación entre los campos para determinar si tienen la misma cantidad.

Como se podría hacer usando la función Order By? Espero tu respuesta gracias.


31-Aug-2016 09:38
Nacho Cabanes (+83)

Es mucho más sencillo de lo que parece: recuerda que ORDER BY puede recibir varios nombres de campos, y entonces se ordenará usando todos ellos como criterio (se parte del primero; se mirará el segundo cuando el primero coincida en dos registros; se comprueba el tercero si coinciden los dor primeros y así sucesivamente):

ORDER BY poblacion, nombre

Sólo falta añadir la cláusula DESC a los campos que quieres que se ordenen de forma descendente (comenzando por el valor más alto).






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)