Sobes.tech
Junior — Middle

Leg het verschil uit tussen een inner join en een outer join in SQL.

sobes.tech AI

Antwoord van AI

In SQL worden interne (INNER JOIN) en externe (OUTER JOIN) joins gebruikt om rijen uit twee tabellen te combineren, maar verschillen ze in de manier waarop ze rijen selecteren:

  • Inner join (INNER JOIN) geeft alleen de rijen terug die overeenkomsten hebben in beide tabellen volgens de join-voorwaarde.

  • Outer join (OUTER JOIN) geeft alle rijen uit één tabel en de overeenkomstige rijen uit de andere tabel. Als er geen overeenkomst is, worden de plaatsen zonder gegevens NULL.

Er zijn drie types externe joins:

  • LEFT OUTER JOIN — alle rijen uit de linker tabel + de overeenkomende uit de rechter
  • RIGHT OUTER JOIN — alle rijen uit de rechter tabel + de overeenkomende uit de linker
  • FULL OUTER JOIN — alle rijen uit beide tabellen, met NULL waar geen overeenkomsten zijn

Voorbeeld:

SELECT * FROM users INNER JOIN orders ON users.id = orders.user_id;
-- Alleen gebruikers met bestellingen

SELECT * FROM users LEFT JOIN orders ON users.id = orders.user_id;
-- Alle gebruikers, zelfs als ze geen bestellingen hebben (orders worden NULL)