Il existe trois principaux types de jointures sqlite.
Ce tutoriel vous guidera rapidement à travers ces jointures SQLite et vous montrera comment rejoindre les enregistrements de base de données.
Commençons par la jointure intérieure en simple et construisons une base pour que nous puissions comprendre d'autres types de jointure.
1: la jointure intérieure
La jointure intérieure fonctionne en créant une nouvelle table en combinant les valeurs des tables spécifiées. Il commence par comparer la ligne sur chaque table et trouver toutes les paires correspondantes par le prédicat spécifié. Il combine ensuite les paires correspondantes en une seule ligne.
La syntaxe générale pour la jointure intérieure est:
Sélectionnez la (s) colonne (s) dans le tableau 1 Tableau de jointure intérieure 2 sur le tableau 1.colonne = table.colonne;
Regardons une opération de jointure pour illustrer comment cela fonctionne.
Supposons que vous ayez une table appelée utilisateurs avec champs: id, nom, âge, requête SQL-échantillon de langue pour créer un tableau ci-dessous:
Créer des "utilisateurs de table" (
"id" entier pas nul,
Texte "nom" pas nul,
"Age" entier n'est pas nul,
texte "langue",
Clé primaire ("ID" Auto-OneCment)
));
Nous avons également un autre tableau appelé Rows with the Fields ID, et une requête Role-SQL fournie ci-dessous:
Créer des "rôles" de table (
"id" entier pas nul,
texte "rôle",
Clé primaire ("ID" Auto-OneCment)
)
Maintenant, nous pouvons exécuter une opération de jointure intérieure SQLite en utilisant la requête ci-dessous:
Sélectionner les utilisateurs.ID, utilisateurs.nom, rôles.Rôle des utilisateurs Inner Joignez des rôles sur les utilisateurs.id = rôles.identifiant;
La requête ci-dessus entraînera le tableau ci-dessous:
2: la croix de jointure
L'autre type de jointure SQL est la jointure croisée. Ce type correspond à chaque ligne de la première table à chaque ligne dans la deuxième table. Considérez-le comme un produit cartésien car les résultats sont un ensemble de lignes du tableau 1 correspondant à chaque ligne du tableau 2. Par exemple, si le tableau 1 a (a) les lignes et la table2 a (b) les lignes, le tableau résultant aura une ligne * b.
NOTE: Soyez prudent lorsque vous utilisez des jointures croisées car ils ont le potentiel pour entraîner d'énormes ensembles de table.
La syntaxe générale pour une jointure croisée est:
Sélectionnez les colonnes (s) dans la table Cross Table 2;
Envisagez une jointure de croix de la table de l'utilisateur avec toutes les lignes du tableau des rôles. Considérez la requête SQL ci-dessous:
Sélectionnez * dans les utilisateurs Cross Join Rôles;
L'exécution de la requête ci-dessus entraînera un tableau comme indiqué ci-dessous:
3: la jointure extérieure gauche
La jointure finale que nous examinerons est la jointure extérieure. La jointure extérieure est une extension de la jointure intérieure. Comme la jointure intérieure, nous l'exprimons sur des conditions telles que sur, neutre et utilisant. Il est également bon de noter que SQL définit trois types de jointures externes: gauche, droite et pleine, mais SQLite prend uniquement en charge la jointure gauche.
La jointure extérieure gauche renvoie toutes les lignes de la table gauche spécifiée dans la condition et uniquement les lignes des autres tables où la condition jointe est vraie.
Considérez la requête suivante.
Sélectionner les utilisateurs.ID, utilisateurs.nom, rôles.rôle, utilisateurs.Langue des utilisateurs gauche des rôles de jointure extérieure sur les utilisateurs.id = rôles.identifiant;
La requête ci-dessus entraînera le tableau ci-dessous:
Conclusion
Ce tutoriel a illustré comment effectuer des jointures SQL dans SQLite et créer de nouvelles tables avec des informations modifiées. Il est bon de continuer à expérimenter les jointures SQL car elles sont très utiles lorsqu'ils travaillent avec des bases de données.
Merci pour la lecture!