Sobes.tech
Junior — Middle

Тавзеҳ диҳед фарқияти байни INNER JOIN ва OUTER JOIN дар SQL ва дар кадом ҳолатҳо ҳар яке истифода мешавад.

sobes.tech AI

Ҷавоб аз AI

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

OUTER JOIN бір кестеден барлық жолдарды және басқа кестеден сәйкес келетін жолдарды қайтару. Егер сәйкестік болмаса, деректер жоқ орындар NULL болады.

OUTER JOIN түрлері:

  • LEFT OUTER JOIN — сол жақ кестеден барлық жолдар + оң жақтан сәйкес келетіндер.
  • RIGHT OUTER JOIN — оң жақ кестеден барлық жолдар + сол жақтан сәйкес келетіндер.
  • FULL OUTER JOIN — екі кестеден барлық жолдар, сәйкестік болмаса NULL болады.

Қолдану мысалы:

  • INNER JOIN — тек байланысты деректер қажет болғанда, мысалы, тапсырыстар мен бар клиенттер.
  • LEFT OUTER JOIN — барлық клиенттерді алу үшін, соның ішінде тапсырысы жоқтар.

SQL мысалы:

SELECT customers.name, orders.id
FROM customers
LEFT JOIN orders ON customers.id = orders.customer_id;

Бұл сұрау барлық клиенттер мен олардың тапсырыстарын қайтарады, егер бар болса, әйтпесе NULL көрсетеді.