Sobes.tech
Middle+

Jaki JOIN jest używany domyślnie, gdy piszesz po prostu JOIN? Jakie rodzaje JOIN istnieją?

sobes.tech AI

Odpowiedź od AI

Domyślnie, gdy w SQL pisze się po prostu JOIN, używany jest INNER JOIN. Zwraca on tylko te wiersze, które mają dopasowania w obu tabelach według warunku połączenia.

Główne rodzaje JOIN:

  • INNER JOIN — zwraca wiersze z dopasowanymi wartościami w obu tabelach.
  • LEFT JOIN (LEFT OUTER JOIN) — zwraca wszystkie wiersze z lewej tabeli i dopasowane z prawej, jeśli dopasowania nie ma, w prawej części będą NULL.
  • RIGHT JOIN (RIGHT OUTER JOIN) — podobnie jak LEFT JOIN, ale zwraca wszystkie wiersze z prawej tabeli.
  • FULL JOIN (FULL OUTER JOIN) — zwraca wszystkie wiersze z obu tabel, tam gdzie nie ma dopasowania, wstawia NULL.
  • CROSS JOIN — iloczyn kartezjański dwóch tabel, zwraca wszystkie możliwe kombinacje wierszy.

Przykład INNER JOIN:

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