Middle
Ի՞նչն է տարբերությունը LEFT JOIN և INNER JOIN-ի միջև։
sobes.tech AI
Պատասխան AI-ից
INNER JOIN վերադարձնում է միայն այն տողերը, որոնք ունեն համընկնող արժեքներ երկու աղյուսակներում: Եթե մեկ աղյուսակում չկա համապատասխան գրառում, այդ տողը չի մտնի արդյունքների մեջ:
LEFT JOIN (կամ LEFT OUTER JOIN) վերադարձնում է բոլոր տողերը ձախ աղյուսակից և համապատասխան տողերը աջից: Եթե աջ աղյուսակում չկա համապատասխանություն, ապա արդյունքում աջ աղյուսակի դաշտերը կլինեն NULL:
Օրինակ՝
SELECT A.id, B.value
FROM A
INNER JOIN B ON A.id = B.a_id;
-- Վերադարձնում է միայն այն id-երը, որոնք ունեն համապատասխան գրառում B-ում
SELECT A.id, B.value
FROM A
LEFT JOIN B ON A.id = B.a_id;
-- Վերադարձնում է բոլոր id-երը A-ից, և այն դեպքում, երբ համապատասխանություն չկա B-ում, value-ն կլինի NULL