JOIN операторы кестені кез келген критерии (шарт) бойынша
байланыстырып бірнеше кестедегі деректерді қосуға мүмкіндік береді.
Байланыстың төрт түрлі типі бар.
INNER JOIN – бұл байланыс таңдамаға бірінші және екінші кестеден тек
қана белгіленген шарттарға қанағаттандырылатын мәндерді қосуға мүмкіндік
береді ;
LEFT OUTER JOIN – бұл байланыс таңдамаға бірінші кестеден барлық
мәндерді және екінші кестеден белгіленген шарттарға қанағаттандырылатын
мәндерді қосуға мүмкіндік береді;
RIGHT OUTER JOIN – бұл байланыс таңдамаға екінші кестеден барлық
мәндерді және бірінші кестеден белгіленген шарттарға қанағаттандырылатын
мәндерді қосуға мүмкіндік береді;
FULL OUTER JOIN – бұл байланыс таңдамаға бірінші және екінші
кестеден барлық мәндерді қосуға мүмкіндік береді.
Бұл жағдайда екі кестеден таңдама орындалғанда SELECT
операторымен орындалатын әрекет кестелердің тоғыстыруы деп аталады, ал
егер тоғыстыру OUTER мен орындалатын болса, онда кестелердің
тоғыстыруын
сыртқы деп атайды. Бір сұраныс ішінде OUTER бірнеше кестелерді қолдануға
болады (бұндай кестелерді бағынатын деп атайды, ал OUTER сіз кестелерді -
жетекші).
Мысалы, , экранға KADR кестесінен (FAM өpici) қызметкерлер
фамиялияларын шығару үшін, ал TABEL кестесінен табельдік нөмерлерге
сәйкес келетін, жазбалар үшін жұмыс күнінің санына сәйкес болатын (WD
өрісі), байланыс шартты LEFT OUTER JOIN командасын міндетті түрде
қолдану керек. (кестенің псевдонимдері есебінде кесте аттары көрсетілген):
SELECT KADR.FAM, TABEL.WD FROM KADR LEFT OUTER JOIN
TABEL
ON KADR.TAB=TABEL.TAB
Бұл команда орындалған кезде KADR кестесінен (сол кестеден) тізбекті
барлық жазбалар қайта қаралады және сұраныс нәтижесіне қосылады. KADR
әр жазба үшін TABEL кестесі қайта қаралады. TABEL кестесінен
KADR.TAB=TABEL.TAB шартына қанағаттандырылатын жазба табылған
кезде, табелдік нөмердің мәніне сәйкес келетін бар жолдың нәтижесіне WD
өрісіне TABEL жазбасына сәйкес мән қосылады. Егер TABEL еш қандай
жазба табылмаса, онда WD өрісі NULL мәнін қабылдайды.