Voici le meilleur exemple de Cross Join et Inner Join.
Considérez les tableaux suivants
TABLE :Teacher
x------------------------x
| TchrId | TeacherName |
x----------|-------------x
| T1 | Mary |
| T2 | Jim |
x------------------------x
TABLE :Student
x--------------------------------------x
| StudId | TchrId | StudentName |
x----------|-------------|-------------x
| S1 | T1 | Vineeth |
| S2 | T1 | Unni |
x--------------------------------------x
1. JOINT INTERNE
La jointure interne sélectionne les lignes qui satisfont à la fois la table .
Considérez que nous devons trouver les enseignants qui sont les enseignants de la classe et leurs élèves correspondants. Dans cette condition, nous devons appliquer JOIN
ou INNER JOIN
et va
Requête
SELECT T.TchrId,T.TeacherName,S.StudentName
FROM #Teacher T
INNER JOIN #Student S ON T.TchrId = S.TchrId
- SQL FIDDLE
Résultat
x--------------------------------------x
| TchrId | TeacherName | StudentName |
x----------|-------------|-------------x
| T1 | Mary | Vineeth |
| T1 | Mary | Unni |
x--------------------------------------x
2. JOINT CROISÉ
La jointure croisée sélectionne toutes les lignes de la première table et toutes les lignes de la deuxième table et s'affiche sous forme de produit cartésien, c'est-à-dire avec toutes les possibilités
Considérant que nous devons trouver tous les enseignants de l'école et les élèves, quels que soient les enseignants de la classe, nous devons appliquer CROSS JOIN
.
Requête
SELECT T.TchrId,T.TeacherName,S.StudentName
FROM #Teacher T
CROSS JOIN #Student S
- SQL FIDDLE
Résultat
x--------------------------------------x
| TchrId | TeacherName | StudentName |
x----------|-------------|-------------x
| T2 | Jim | Vineeth |
| T2 | Jim | Unni |
| T1 | Mary | Vineeth |
| T1 | Mary | Unni |
x--------------------------------------x