⊗pyPmDBNSr 115 of 129 menu

Ordenación de registros mediante consulta SQL en Python

Para ordenar las filas del resultado, es necesario utilizar el comando ORDER BY.

Ejemplo

Seleccionemos de nuestra tabla users todos los usuarios y ordenémoslos por edad de menor a mayor:

query = "SELECT * FROM users ORDER BY age"

Resultado del código ejecutado:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}

Ejemplo

Cambiemos el orden de clasificación usando el comando DESC:

query = "SELECT * FROM users ORDER BY age DESC"

Resultado del código ejecutado:

{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}

Ejemplo

Seleccionemos todos los usuarios con salario 500 y ordenémoslos por edad de menor a mayor:

query = "SELECT * FROM users WHERE salary=500 ORDER BY age"

Resultado del código ejecutado:

{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}

Ejemplo

Se puede ordenar no por un campo, sino por varios. Como ejemplo, seleccionemos todos los usuarios y ordenémoslos primero por edad ascendente, y a los usuarios con la misma edad los ordenaremos por salario ascendente:

query = "SELECT * FROM users ORDER BY age, salary"

Resultado del código ejecutado:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500} {'id': 5, 'name': 'user5', 'age': 27, 'salary': 500} {'id': 6, 'name': 'user6', 'age': 28, 'salary': 900} {'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}

Ejemplo

El comando ORDER BY se puede combinar con LIMIT. En este caso, primero se debe escribir el comando de ordenación, y luego - el límite. En el siguiente ejemplo, primero ordenaremos los registros por edad ascendente, y luego tomaremos las primeras 3 unidades:

query = "SELECT * FROM users ORDER BY age LIMIT 3"

Resultado del código ejecutado:

{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400} {'id': 3, 'name': 'user3', 'age': 23, 'salary': 500} {'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}

Tareas prácticas

Obtenga todos los usuarios y ordénelos por salario ascendente.

Obtenga todos los usuarios y ordénelos por salario descendente.

Obtenga todos los usuarios y ordénelos por nombre.

Obtenga los usuarios con salario 500 y ordénelos por edad.

Obtenga todos los usuarios y ordénelos por nombre y por salario.

Ordene los usuarios por salario ascendente y obtenga los primeros 3 empleados del resultado de la ordenación.

Ordene los usuarios por salario descendente y obtenga los primeros 3 usuarios del resultado de la ordenación.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar