Sobes.tech
Middle

Ի՞նչ տարբերություն կա JOIN, LEFT JOIN և RIGHT JOIN միջև։

sobes.tech AI

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

JOIN-ը SQL-ում գործողություն է, որը միավորում է երկու աղյուսակների տողերը՝ հիմնվելով նշված սյունակների արժեքների համապատասխանության վրա:

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

Օրինակ:

SELECT * FROM A
JOIN B ON A.id = B.a_id; -- միայն համապատասխան տողեր

SELECT * FROM A
LEFT JOIN B ON A.id = B.a_id; -- բոլորից A + համապատասխան B

SELECT * FROM A
RIGHT JOIN B ON A.id = B.a_id; -- բոլորից B + համապատասխան A