Sobes.tech
Junior

Ինչպես է աշխատում SQL Join-ը?

sobes.tech AI

Պատասխան AI-ից

SQL JOIN միավորում է երկու կամ ավելի աղյուսակների տողերը՝ հիմնվելով նրանց միջև կապակցված սյունակի վրա։ Կան մի քանի տեսակների JOIN.

  • INNER JOIN: Վերադարձնում է այն տողերը, որտեղ արժեքները համընկնում են երկու աղյուսակներում:
  • LEFT (OUTER) JOIN: Վերադարձնում է բոլոր տողերը ձախ աղյուսակից և համընկնող տողերը աջից։ Եթե համընկնումներ չկան, աջ աղյուսակի սյունակների համար արժեքը կլինի NULL:
  • RIGHT (OUTER) JOIN: Վերադարձնում է բոլոր տողերը աջ աղյուսակից և համընկնող տողերը ձախից։ Եթե համընկնումներ չկան, ձախ աղյուսակի սյունակների համար արժեքը կլինի NULL:
  • FULL (OUTER) JOIN: Վերադարձնում է բոլոր տողերը երկու աղյուսակներից։ Եթե համընկնումներ չկան, համապատասխան սյունակների արժեքները կլինեն NULL:
  • CROSS JOIN: Վերադարձնում է երկու աղյուսակների դեկարտյան արտադրանքը (յուրաքանչյուր տող առաջին աղյուսակից միանում է յուրաքանչյուր տողի երկրորդից):

Սինտաքսիսը սովորաբար wygląda է այսպես:

SELECT սյունակ1, սյունակ2...
FROM աղյուսակ1
JOIN աղյուսակ2 ON աղյուսակ1.համատեղ_սյունակ = աղյուսակ2.համատեղ_սյունակ;

Օրինակ INNER JOIN:

SELECT պատվերներ.order_id, հաճախորդներ.customer_name
FROM պատվերներ
INNER JOIN հաճախորդներ ON պատվերներ.customer_id = հաճախորդներ.customer_id;

Նայենք հաճախորդներ և պատվերներ աղյուսակները:

հաճախորդներ

customer_id customer_name
1 Alice
2 Bob
3 Charlie

պատվերներ

order_id customer_id amount
101 1 100
102 2 150
103 1 200
104 4 50

Արդյունքը INNER JOIN կլինի.

order_id customer_name
101 Alice
102 Bob
103 Alice

Արդյունքը LEFT JOIN (պատվերներ LEFT JOIN հաճախորդներ):

order_id customer_id amount customer_name
101 1 100 Alice
102 2 150 Bob
103 1 200 Alice
104 4 50 NULL