Sobes.tech
Junior — Middle

SQL-də CROSS JOIN və FULL OUTER JOIN əməliyyatlarının fərqi nədir və hər birini hansı hallarda istifadə etmək lazımdır?

sobes.tech Süni İntellekt

AI-dan cavab

CROSS JOINFULL OUTER JOIN SQL-də müxtəlif məqsədlər üçün müxtəlif cədvəl birləşmə növləridir:

  • CROSS JOIN iki cədvəlin kartezian hasilidir. Birinci cədvəldən hər sətir ikinci cədvəldən hər sətirlə birləşir. Bütün mümkün sətir kombinasiyalarını əldə etmək üçün istifadə olunur.

    Nümunə:

    SELECT * FROM A CROSS JOIN B;
    

    Əgər A-də 3 sətir və B-də 2 sətir varsa, nəticə 6 sətir olacaq.

  • FULL OUTER JOIN hər iki cədvəldən sətirləri birləşdirir, bütün sətirləri daxil edir, hətta digər cədvəldə uyğunluq olmasa belə. Uyğunluq olmayan yerlərdə digər cədvəlin sahələri NULL ilə doldurulacaq.

    İstifadə olunur, hər iki cədvəldən bütün məlumatları əldə etmək və uyğun olmayan sətirlər haqqında məlumatı saxlamaq üçün.

    Nümunə:

    SELECT * FROM A FULL OUTER JOIN B ON A.id = B.id;
    

Nə zaman istifadə etmək:

  • CROSS JOIN — bütün mümkün cütlükləri yaratmaq üçün, məsələn, cədvəllər və ya kombinasiyalar yaradarkən.
  • FULL OUTER JOIN — iki cədvəldən məlumatları birləşdirmək və bütün qeydləri saxlamaq istədiyiniz zaman.

Beləliklə, CROSS JOIN sətir sayını artırır, FULL OUTER JOIN isə məlumatları birləşdirir və bütün qeydləri saxlayır.