Filtrar los registros de tu base de datos utilizando SQL's WHERE
Ahora puedes ejecutar una consulta básica en SQL para seleccionar registros de cualquier tabla de tu base de datos y también puedes realizar personalizaciones sencillas de la consulta para seleccionar columnas y números de filas concretos.
Hay un par más de chuletas de consulta estándar de SQL que te ayudarán en tu camino para convertirte en un ninja de SQL.
Supongamos, por ejemplo, que quieres obtener todos los registros de la tabla Customer
de la base de datos Chinook cuyo Country
sea 'Canada'
. Puedes hacerlo muy fácilmente en SQL utilizando una declaración SELECT
seguida de una cláusula WHERE
como se indica a continuación:
SELECT * FROM Customer WHERE Country = 'Canada'
De hecho, puedes filtrar cualquier sentencia SELECT
por cualquier condición utilizando una cláusula WHERE
. Esto se llama filtrar tus registros.
En este ejercicio interactivo, seleccionarás todos los registros de la tabla Employee
para los que 'EmployeeId'
sea mayor o igual que 6
.
Los paquetes ya están importados de la siguiente manera
import pandas as pd
from sqlalchemy import create_engine
¡Consulta!
Este ejercicio forma parte del curso
Introducción a la importación de datos en Python
Instrucciones de ejercicio
- Completa el argumento de
create_engine()
para que se cree el motor de la base de datos SQLite'Chinook.sqlite'
. - Ejecuta la consulta que selecciona todos los registros de la tabla
Employee
en los que'EmployeeId'
es mayor o igual que6
. Utiliza el operador>=
y asigna los resultados ars
. - Aplica el método
fetchall()
ars
para obtener todos los registros ders
. Almacénalos en el DataFramedf
. - Utilizando el objeto
rs
, establece los nombres de las columnas del DataFrame con los nombres correspondientes de las columnas de la tabla.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# Create engine: engine
engine = create_engine(____)
# Open engine in context manager
# Perform query and save results to DataFrame: df
with engine.connect() as con:
rs = con.execute(____)
df = pd.DataFrame(____)
df.columns = ____
# Print the head of the DataFrame df
print(df.head())