Sobes.tech
Junior — Middle

SQL-да ішкі қосылыс пен сол жақ сыртқы қосылыс арасындағы айырмашылықты түсіндіріңіз.

sobes.tech AI

AI-дан жауап

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

Сол жақ сыртқы қосылыс (LEFT JOIN) сол жақ кестеден барлық жолдарды және оң жақ кестеден сәйкес келетін жолдарды қайтарады. Егер сол жақ кестеден жолға сәйкес келетін оң жақта жазба болмаса, нәтиже сол жақ кестеден мәндерді қамтиды, ал оң жақ үшін — NULL.

Мысал:

A кестесі:

id аты
1 Alice
2 Bob

B кестесі:

id қала
1 London
  • id бойынша INNER JOIN:
id аты қала
1 Alice London
  • id бойынша LEFT JOIN:
id аты қала
1 Alice London
2 Bob NULL

Осылайша, LEFT JOIN сол жақ кестеден барлық жазбаларды сақтайды, ал INNER JOIN — тек сәйкес келетіндерді.