Sobes.tech
Junior

Какви видове оператори за съединяване (JOIN) съществуват в SQL?

sobes.tech AI

Отговор от AI

  • INNER JOIN (или просто JOIN): Връща записите, които имат съвпадащи стойности и в двете съединени таблици.
  • LEFT JOIN (или LEFT OUTER JOIN): Връща всички записи от лявата таблица и съвпадащите записи от дясната таблица. Ако няма съвпадения в дясната таблица, се връщат NULL стойности за колоните на дясната таблица.
  • RIGHT JOIN (или RIGHT OUTER JOIN): Връща всички записи от дясната таблица и съвпадащите записи от лявата таблица. Ако няма съвпадения в лявата таблица, се връщат NULL стойности за колоните на лявата таблица.
  • FULL JOIN (или FULL OUTER JOIN): Връща всички записи, когато има съвпадение в лявата или дясната таблица. Ако няма съвпадение, се връщат NULL стойности за колоните без съвпадение.
  • CROSS JOIN: Връща декартовото произведение на редовете от съединените таблици. Всеки ред от първата таблица се комбинира с всеки ред от втората таблица. Не е необходимо условие ON.
  • SELF JOIN: Това е съединение на таблица със самата себе си. Изисква използването на псевдоними за разграничаване на колоните от различните "копия" на таблицата.

Примерен код за INNER JOIN:

SELECT col1, col2
FROM table1
INNER JOIN table2 ON table1.common_col = table2.common_col;