Sobes.tech
Junior — Middle

Дар SQL дар пайваст кардани ҷадвалҳо чӣ фарқият дорад байни истифодаи INNER JOIN ва OUTER JOIN?

sobes.tech AI

Ҷавоб аз AI

INNER JOIN қайтару үшін екі кестеде де сәйкестендіру шарттарына сәйкес келетін жолдар ғана қайтарылады. Егер бір кестеде сәйкес жазба болмаса, сол жол нәтижеге қосылмайды.

OUTER JOIN (LEFT, RIGHT немесе FULL) бір немесе екі кестеден барлық жолдарды, сәйкестендіру жоқ болса да, қайтару үшін пайдаланылады. Мұндай жағдайларда жетіспейтін мәндер NULL арқылы толтырылады.

Мысал:

-- INNER JOIN: тек сәйкестендірілген жазбалар
SELECT * FROM users INNER JOIN orders ON users.id = orders.user_id;

-- LEFT OUTER JOIN: барлық пайдаланушылар, тіпті тапсырысы жоқтар
SELECT * FROM users LEFT JOIN orders ON users.id = orders.user_id;