Selección de registros en consultas SQL a la base de datos en Python
En el código de prueba de la consulta SQL está el comando
SELECT, que realiza la selección de datos
de la BD. Ahora analicemos más detenidamente
su sintaxis. Aquí está:
query = "SELECT * FROM tabla WHERE condición"
Después del nombre de la tabla, también se puede añadir
el comando WHERE, donde se especifica
la condición para los registros seleccionados. En ella son permitidas
las siguientes operaciones de comparación: =,
!=, <>, <, >,
<=, >=.
Veamos su aplicación con ejemplos.
Ejemplo
Seleccionemos al usuario con id igual a 2:
query = "SELECT * FROM users WHERE id=2"
Resultado del código ejecutado:
{'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}
Ejemplo
Seleccionemos los usuarios con id mayor a 2:
query = "SELECT * FROM users WHERE id>2"
Resultado del código ejecutado:
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}
Ejemplo
Seleccionemos los usuarios con id mayor o
igual a 2:
query = "SELECT * FROM users WHERE id>=2"
Resultado del código ejecutado:
{'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}
Ejemplo
Seleccionemos los usuarios con id diferente de
2:
query = "SELECT * FROM users WHERE id!=2"
Resultado del código ejecutado:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}
Ejemplo
En lugar del comando != se puede usar
el comando <>:
query = "SELECT * FROM users WHERE id<>2"
Ejemplo
Seleccionemos al usuario con nombre 'user1'.
Aquí nos espera un matiz importante: dado que
el nombre es una cadena, es necesario
encerrarlo entre comillas:
query = "SELECT * FROM users WHERE name='user1'"
Resultado del código ejecutado:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
Ejemplo
Si el comando WHERE está ausente, entonces
se seleccionarán todos los registros de la tabla. Seleccionemos
a todos los trabajadores:
query = "SELECT * FROM users"
Resultado del código ejecutado:
{'id': 1, 'name': 'user1', 'age': 23, 'salary': 400}
{'id': 2, 'name': 'user2', 'age': 25, 'salary': 500}
{'id': 3, 'name': 'user3', 'age': 23, 'salary': 500}
{'id': 4, 'name': 'user4', 'age': 30, 'salary': 900}
{'id': 5, 'name': 'user5', 'age': 27, 'salary': 500}
{'id': 6, 'name': 'user6', 'age': 28, 'salary': 900}
Tareas prácticas
Seleccione al usuario con id igual a 3.
Seleccione los usuarios con salario 900.
Seleccione los usuarios con edad de 23 años.
Seleccione los usuarios con salario mayor a 400.
Seleccione los usuarios con salario igual o
superior a 500.
Seleccione los usuarios con salario NO igual
a 500.
Seleccione los usuarios con salario igual o
inferior a 500.