Rejoindre Python MySQL

Joindre deux tables ou plus
Vous pouvez combiner des lignes de deux tables ou plus, en fonction d’une colonne liée entre elles, à l’aide d’une instruction JOIN.
Considérez que vous avez une table « utilisateurs » et une table « produits »:
utilisateurs
{ id : 1, nom : ‘John’, fav : 154},
{ id : 2, nom : ‘Peter’, fav : 154},
{ id : 3, nom : ‘Amy’, fav : 155},
{ id : 4, nom : ‘Hannah’, fav :},
{ id : 5, nom : ‘Michael’, fav :}
des produits
{ id : 154, nom : ‘Chocolate Heaven’ },
{ id : 155, nom : ‘Tasty Lemons’ },
{ id : 156, nom : ‘Vanilla Dreams’ }
Ces deux tables peuvent être combinées en utilisant les fav
domaine et produits’
id
champ.
Exemple
Rejoignez les utilisateurs et les produits pour voir le nom du produit préféré des utilisateurs :
importer mysql.connector
mydb = mysql.connector.connect(
hôte= »localhost »,
utilisateur= »ton nom d’utilisateur« ,
mot de passe= »votre mot de passe« ,
base de données= »mabase de données »
)
moncurseur = madb.curseur()
sql = « SELECT
utilisateurs.nom AS utilisateur,
produits.nom AS favori
DES utilisateurs
INNER JOIN produits ON users.fav = products.id »
moncurseur.execute(sql)
monrésultat = moncurseur.fetchall()
pour x dans monrésultat :
impression(x)
Exemple d’exécution »
Note: Vous pouvez utiliser JOIN au lieu de INNER JOIN. Ils vous donneront tous les deux le même résultat.
JOINT GAUCHE
Dans l’exemple ci-dessus, Hannah et Michael ont été exclus du résultat, car INNER JOIN affiche uniquement les enregistrements où il existe une correspondance.
Si vous souhaitez afficher tous les utilisateurs, même s’ils n’ont pas de produit favori, utilisez l’instruction LEFT JOIN :
Exemple
Sélectionnez tous les utilisateurs et leur produit préféré :
sql = « SELECT
utilisateurs.nom AS utilisateur,
produits.nom AS favori
DES utilisateurs
PRODUITS DE JOINTURE GAUCHE SUR users.fav = products.id »
Exemple d’exécution »
JOINDRE À DROITE
Si vous souhaitez renvoyer tous les produits et les utilisateurs qui les ont comme favoris, même si aucun utilisateur ne les a comme favoris, utilisez l’instruction RIGHT JOIN :
Exemple
Sélectionnez tous les produits et le ou les utilisateurs qui les ont comme favoris :
sql = « SELECT
utilisateurs.nom AS utilisateur,
produits.nom AS favori
DES utilisateurs
RIGHT JOIN produits ON users.fav = products.id »
Exemple d’exécution »
Note: Hannah et Michael, qui n’ont pas de produit préféré, ne sont pas inclus dans le résultat.
#Rejoindre #Python #MySQL