Junior — Middle
Kā atšķiras iekšējā savienojuma un labās ārējās savienojuma atšķirības SQL?
sobes.tech AI
Atbilde no AI
SQL iekšējā savienojuma (INNER JOIN) un labās ārējās savienojuma (RIGHT OUTER JOIN) atšķiras pēc tā, kuras rindas no tabulām tiek iekļautas rezultātā.
-
INNER JOIN atgriež tikai tās rindas, kurām ir atbilstība abās tabulās saskaņā ar savienošanas nosacījumu.
-
RIGHT OUTER JOIN atgriež visas rindas no labās tabulas un atbilstošās rindas no kreisās tabulas. Ja labās tabulas rindai nav atbilstības kreisajā, kreisās tabulas lauki būs NULL.
Piemērs:
SELECT * FROM A INNER JOIN B ON A.id = B.a_id;
-- Atgriež tikai tās rindas, kur A.id atbilst B.a_id
SELECT * FROM A RIGHT OUTER JOIN B ON A.id = B.a_id;
-- Atgriež visas rindas no B, pat ja nav atbilstības A