Auto-rejoindre

Définition - Que signifie l'auto-adhésion?

Une auto-jointure, également appelée jointure interne, est une instruction SQL (SQL) dans laquelle une table interrogée est jointe à elle-même. L'instruction d'auto-jointure est nécessaire lorsque deux ensembles de données, dans la même table, sont comparés.

Definir Tech explique l'auto-adhésion

À titre d'exemple, il existe une table nommée EMPLOYEES qui contient trois colonnes:

  • Nom de l'employé
  • identifiant d'employé
  • identifiant du responsable des employés

Etant donné que les managers sont également des employés, la colonne MANAGER_ID contient également l'ID d'un autre employé qui est également le manager. Pour écrire une requête pour extraire les noms et ID des employés et des responsables, la table doit être divisée en deux pour exécuter deux requêtes distinctes: les employés (première table) et les responsables (deuxième table). Ceci est réalisé en exécutant l'exemple de requête SQL suivant:

SELECT a.employee_name, b.employee_name comme Manager_name
FROM employés en tant que a, employés en tant que b
WHERE a.manager_id = b.employee_id

La compréhension du concept et des circonstances d'auto-jointure est essentielle pour comprendre l'instruction SQL ci-dessus.

Dans l'exemple, la deuxième table EMPLOYEES reçoit l'alias b, qui est en fait un sous-ensemble de la table EMPLOYEES complète. Cependant, la condition WHERE force la première table EMPLOYEES à interroger le responsable des employés dans la deuxième table EMPLOYEES.