Dans les systèmes de gestion de bases de données (SGBD), les jointures sont utilisées pour combiner des lignes de deux ou plusieurs tables en fonction d'une ou plusieurs colonnes associées. Voici différents types de jointures ainsi que des exemples :
1. Jointure interne :
- Combine les lignes de deux tables où il existe une correspondance entre les colonnes de jointure des deux tables.
- Exemple:
```sql
SÉLECTIONNER *
DES Clients
Commandes INNER JOIN
ON Customers.CustomerID =Commandes.CustomerID ;
```
2. Jointure externe gauche :
- Inclut toutes les lignes du tableau de gauche et uniquement les lignes correspondantes du tableau de droite.
- Exemple:
```sql
SÉLECTIONNER *
DES Clients
JOINTURE EXTERNE GAUCHE
ON Customers.CustomerID =Commandes.CustomerID ;
```
3. Jointure externe droite :
- Inclut toutes les lignes du tableau de droite et uniquement les lignes correspondantes du tableau de gauche.
- Exemple:
```sql
SÉLECTIONNER *
DES Clients
Ordres RIGHT OUTER JOIN
ON Customers.CustomerID =Commandes.CustomerID ;
```
4. Jointure externe complète :
- Combine toutes les lignes des deux tables, y compris les lignes sans correspondance de l'une ou l'autre table.
- Exemple:
```sql
SÉLECTIONNER *
DES Clients
Commandes FULL OUTER JOIN
ON Customers.CustomerID =Commandes.CustomerID ;
```
5. Auto-adhésion :
- Effectue une opération de jointure sur la même table, reliant les lignes en fonction d'une colonne commune dans la table.
- Exemple:
```sql
SÉLECTIONNER *
FROM Employés AS Employé1
REJOIGNEZ les employés en tant qu'employé2
ON Employee1.ManagerID =Employee2.EmployeeID ;
```
6. Jointure croisée :
- Combine chaque ligne d'une table avec chaque ligne d'une autre table, ce qui donne un grand nombre de lignes.
- Exemple:
```sql
SÉLECTIONNER *
DES Clients
Ordres CROSS JOIN ;
```
7. Rejointure naturelle :
- Effectue une jointure interne basée sur les noms de colonnes communs entre deux tables. Les noms de colonnes courants n'ont pas besoin d'être explicitement spécifiés.
- Exemple:
```sql
SÉLECTIONNER *
DES Clients
Ordres de jointure naturelle ;
```
Lors de l'utilisation de jointures, il est important d'envisager la création d'index sur les colonnes de jointure pour améliorer les performances et optimiser l'exécution des requêtes.
|