Sobes.tech
Junior — Middle

Czy możesz wymienić różne typy połączeń tabel w SQL i opisać ich cechy?

sobes.tech AI

Odpowiedź od AI

W SQL istnieje kilka głównych typów połączeń (JOIN), które pozwalają łączyć dane z dwóch lub więcej tabel:

  • INNER JOIN — zwraca tylko te wiersze, w których występują dopasowania w obu tabelach.
  • LEFT JOIN (LEFT OUTER JOIN) — zwraca wszystkie wiersze z lewej tabeli i dopasowane wiersze z prawej; jeśli dopasowania nie ma, wartości z prawej będą NULL.
  • RIGHT JOIN (RIGHT OUTER JOIN) — odwrotnie, zwraca wszystkie wiersze z prawej tabeli i dopasowane z lewej.
  • FULL JOIN (FULL OUTER JOIN) — zwraca wszystkie wiersze z obu tabel, wypełniając NULL tam, gdzie nie ma dopasowań.
  • CROSS JOIN — iloczyn kartezjański, każdy wiersz z pierwszej tabeli łączy się z każdym wierszem z drugiej.

Przykład INNER JOIN:

SELECT users.name, orders.id
FROM users
INNER JOIN orders ON users.id = orders.user_id;

Ta kwerenda zwróci użytkowników, którzy mają zamówienia.