Filtrer les enregistrements de votre base de données à l'aide de SQL WHERE
Vous pouvez désormais exécuter une requête SQL de base pour sélectionner des enregistrements dans n'importe quelle table de votre base de données et vous pouvez également personnaliser des requêtes simples pour sélectionner des colonnes et des nombres de lignes particuliers.
Il existe d'autres méthodes de requête SQL standard qui vous aideront à devenir un ninja du langage SQL.
Supposons, par exemple, que vous souhaitiez obtenir tous les enregistrements de la table Customer
de la base de données Chinook pour lesquels l'adresse Country
est 'Canada'
. Vous pouvez le faire très facilement en SQL en utilisant une instruction SELECT
suivie d'une clause WHERE
comme suit :
SELECT * FROM Customer WHERE Country = 'Canada'
En fait, vous pouvez filtrer n'importe quelle déclaration SELECT
par n'importe quelle condition à l'aide d'une clause WHERE
. C'est ce qu'on appelle filtrer vos dossiers.
Dans cet exercice interactif, vous sélectionnerez tous les enregistrements de la table Employee
pour lesquels 'EmployeeId'
est supérieur ou égal à 6
.
Les packages sont déjà importés comme suit :
import pandas as pd
from sqlalchemy import create_engine
Posez votre question !
Cet exercice fait partie du cours
Introduction à l'importation de données en Python
Instructions
- Complétez l'argument de
create_engine()
pour que le moteur de la base de données SQLite'Chinook.sqlite'
soit créé. - Exécutez la requête qui sélectionne tous les enregistrements de la table
Employee
où'EmployeeId'
est supérieur ou égal à6
. Utilisez l'opérateur>=
et affectez les résultats àrs
. - Appliquez la méthode
fetchall()
àrs
afin de récupérer tous les enregistrements dansrs
. Stockez-les dans le DataFramedf
. - À l'aide de l'objet
rs
, attribuez aux noms des colonnes du DataFrame les noms correspondants des colonnes de la table.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# 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())