à partir d’ici? Cette leçon fait partie d’un tutoriel complet sur L’utilisation de SQL pour L’analyse de données. Découvrez le début.
dans cette leçon, nous allons couvrir:
- INNER JOIN
- Joining tables with identical column names
- Practice problem
INNER JOIN
dans la leçon précédente, vous avez appris les bases des jointures SQL en utilisant des données sur les joueurs de football collégial. Tous les joueurs dans le players
le tableau correspondent à une école dans le teams
tableau. Mais que faire si les données ne sont pas si propres?, Que se passe-t-il s’il y a plusieurs écoles dans la table teams
avec le même nom? Ou si un joueur va dans une école qui n’est pas dans la table teams
?
S’il y a plusieurs écoles dans la tableteams
portant le même nom, chacune de ces lignes sera jointe aux lignes correspondantes dans la tableplayers
., Pour revenir à L’exemple précédent avec Michael Campanaro, s’il y avait trois lignes dans la table teams
où school_name = 'Wake Forest'
, la requête de jointure ci-dessus renverrait trois lignes avec Michael Campanaro.
Il arrive souvent que l’une ou les deux tables jointes contiennent des lignes qui n’ont pas de correspondance dans l’autre table. La façon dont c’est géré dépend si vous faites une jointure interne ou une jointure externe.
Nous allons commencer avec les jointures internes, ce qui peut être écrit comme: JOIN benn.college_football_teams teams
ou INNER JOIN benn.college_football_teams teams
., Les jointures internes éliminent les lignes des deux tables qui ne satisfont pas à la condition de jointure définie dans l’instruction ON
. En termes mathématiques, une jointure interne est l’intersection des deux tables.
par conséquent, si un joueur va à une école qui n’est pas dans le teams
table, le joueur ne sera pas inclus dans le résultat d’une jointure interne., De même, s’il y a des écoles dans la table teams
qui ne correspondent à aucune école dans la table players
, ces lignes ne seront pas non plus incluses dans les résultats.
joindre des tables avec des noms de colonnes identiques
lorsque vous joignez deux tables, il se peut que les deux tables aient des colonnes avec des noms identiques., Dans l’exemple ci—dessous, les deux tables ont des colonnes appelées school_name
:
les résultats ne peuvent prendre en charge qu’une seule colonne avec un nom donné-lorsque vous incluez 2 colonnes du même nom, les résultats afficheront simplement exactement le même jeu de résultats pour les deux colonnes même si les deux colonnes doivent Vous pouvez éviter cela en nommant les colonnes individuellement., Il arrive que ces deux colonnes contiennent en fait les mêmes données car elles sont utilisées pour la clé de jointure, mais la requête suivante permet techniquement à ces colonnes d’être indépendantes:
Affûtez vos compétences SQL
problème de pratique
écrivez une requête qui affiche les noms des joueurs, les noms des écoles et les conférences pour les écoles de la division « FBS (Division I-A Teams) ».
Essayer de Voir la réponse