Cuprins:
Definiție - Ce înseamnă Self-Join?
O auto-unire, cunoscută și sub numele de unire interioară, este o instrucțiune SQL (SQL) de interogare structurată în care o tabelă interogată este unită la sine. Declarația de auto-unire este necesară atunci când sunt comparate două seturi de date, din cadrul aceluiași tabel.
Techopedia explică Self-Join
Ca exemplu, există un tabel numit ANGAJAMENT care conține trei coloane:
- numele angajatului
- card de identitate al angajatului
- ID-ul managerului angajatului
Deoarece managerii sunt și angajați, coloana MANAGER_ID conține, de asemenea, ID-ul unui alt angajat care este și manager. Pentru a scrie o interogare pentru a extrage numele și ID-urile angajatului și managerului, tabelul trebuie împărțit logic la jumătate pentru a rula două interogări separate: angajați (primul tabel) și manageri (al doilea tabel). Acest lucru se realizează prin rularea următoarei interogări SQL de exemplu:
SELECT nume a.employee, nume b.employee ca nume Manager
DE la angajați ca a, angajați ca b
WHERE a.manager_id = b.employee_id
Înțelegerea conceptului și a circumstanțelor de auto-unire este esențială pentru a înțelege instrucțiunea SQL de mai sus.
În exemplu, cel de-al doilea tabel EMPLOYEES este dat alias b, care este de fapt un subset al tabelului EMPLOYEES complet. Cu toate acestea, condiția WHERE obligă primul tabel DE ANGAJAT să solicite managerul angajaților din cel de-al doilea tabel ANGAJAT.
