MySQL Self Join
Self Join est utilisée pour joindre une table à elle-même lors de l’utilisation d’une jointure.
Self Join est utile lorsque vous souhaitez combiner des enregistrements d’une table avec d’autres enregistrements de la même table qui correspondent à une certaine condition de jointure.
Syntaxe:
SELECT colonne1, colonne2, ... colonne_n FROM table1 T1, table1 T2 WHERE condition;
Exemple:
Prenons l’exemple suivant:
SELECT a.id, a.firstName, a.lastName, b.id, b.firstName, b.lastName FROM client a INNER JOIN client b ON a.lastName = b.firstName;
Dans l’exemple ci-dessus, nous récupérons tous les clients dont la colonne « lastName » correspond à la colonne « firstName ». Nous y parvenons en attribuant des alias à la table Client tout en effectuant une jointure interne sur les deux alias. Les alias nous permettent de joindre la table à elle-même car ils attribuent à la table deux noms uniques, ce qui signifie que nous pouvons interroger la table comme s’il s’agissait de deux tables différentes.