ComenzarEmpieza gratis

Filtra datos seleccionados de una tabla - Expresiones

Además de los comparadores estándar de Python, también podemos usar métodos como in_() para crear cláusulas where() más potentes. Puedes ver una lista completa de expresiones en la documentación de SQLAlchemy.

El método in_(), cuando se usa sobre una columna, nos permite incluir registros en los que el valor de una columna esté entre una lista de valores posibles. Por ejemplo, where(census.columns.age.in_([20, 30, 40])) devolverá solo los registros de personas que tienen exactamente 20, 30 o 40 años.

En este ejercicio, seguirás trabajando con la tabla census y seleccionarás los registros de personas de los tres estados con mayor densidad de población. La lista de esos estados ya se ha creado por ti.

Este ejercicio forma parte del curso

Introducción a las bases de datos en Python

Ver curso

Instrucciones del ejercicio

  • Selecciona todos los registros de la tabla census.
  • Modifica el argumento de la cláusula where para usar in_() y devolver todos los registros en los que el valor de la columna census.columns.state esté en la lista states.
  • Recorre el ResultProxy connection.execute(stmt) e imprime las columnas state y pop2000 de cada registro.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Define a list of states for which we want results
states = ['New York', 'California', 'Texas']

# Create a query for the census table: stmt
stmt = select(____)

# Append a where clause to match all the states in_ the list states
stmt = stmt.where(____)

# Loop over the ResultProxy and print the state and its population in 2000
for ____ in connection.execute(____):
    print(____, ____)
Editar y ejecutar código