Съдържание:
Определение - Какво означава Self-Join?
Самосъединяването, известно още като вътрешно присъединяване, е структуриран израз на заявителен език (SQL), в който заявена таблица е присъединена към себе си. Декларацията за самосъединяване е необходима, когато се сравняват два набора данни в рамките на една и съща таблица.
Техопедия обяснява Self-Join
Като пример има таблица, наречена РАБОТОДАТЕЛИ, която съдържа три колони:
- Име на служителя
- идентификационен номер на служителя
- идентификационен номер на мениджъра на служителя
Тъй като мениджърите също са служители, колоната MANAGER_ID също съдържа идентификационния номер на друг служител, който също е мениджър. За да напишете заявка за извличане на имена на служители и мениджър, таблицата трябва да бъде логически разделена наполовина, за да изпълни две отделни заявки: служители (първа таблица) и мениджъри (втора таблица). Това се постига чрез стартиране на следната примерна SQL заявка:
ИЗБЕРЕТЕ a.employee_name, b.employee_name като име на мениджър
ОТ служители като a, служители като b
КЪДЕ a.manager_id = b.employee_id
Разбирането на концепцията и обстоятелствата за самосъединяване е от съществено значение за схващането на горното SQL изявление.
В примера, на втората таблица EMPLOYEES е даден псевдоним b, който всъщност е подмножество на пълната таблица EMPLOYEES. Въпреки това условието WHERE принуждава първата таблица EMPLOYEES да изпрати запитване до мениджъра на служителите във втората таблица EMPLOYEES.