Sobes.tech
Middle

Kā atšķiras LEFT JOIN no INNER JOIN?

sobes.tech AI

Atbilde no AI

LEFT JOIN un INNER JOIN ir SQL tabulu savienojumu veidi, kas atšķiras pēc rindu izvēles veida:

  • INNER JOIN atgriež tikai tās rindas, kurām ir atbilstības abās tabulās saskaņā ar savienojuma nosacījumu.
  • LEFT JOIN atgriež visas rindas no kreisās tabulas un atbilstošās rindas no labās. Ja atbilstība nav, labās tabulas kolonnas būs NULL.

Piemērs:

SELECT a.id, b.value
FROM table_a a
INNER JOIN table_b b ON a.id = b.a_id;

SELECT a.id, b.value
FROM table_a a
LEFT JOIN table_b b ON a.id = b.a_id;

Pirmajā gadījumā tiks rādītas tikai tās ieraksti, kas atbilst abās tabulās. Otrajā — visi ieraksti no table_a, pat ja tiem nav atbilstošu ierakstu table_b.