Sobes.tech
Junior — Middle

Ինչ է տարբերությունը SQL-ում INNER JOIN և OUTER JOIN օգտագործման միջև աղյուսակները միացնելու ժամանակ։

sobes.tech AI

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

INNER JOIN միայն այն տողերը վերադարձնում է, որոնք համապատասխանում են միացման պայմանին երկու աղյուսակներում։ Եթե մեկ աղյուսակում համապատասխան գրառում չլինի, այդ տողը արդյունք չի լինի։

OUTER JOIN (LEFT, RIGHT կամ FULL) վերադարձնում է բոլոր տողերը մեկ կամ երկու աղյուսակներից, ներառյալ այն տողերը, որոնց համար չկա համապատասխանություն։ Այդ դեպքերում բացակա արժեքները լրացվում են NULL-ով։

Օրինակ՝

-- INNER JOIN: միայն համապատասխան գրառումները
SELECT * FROM users INNER JOIN orders ON users.id = orders.user_id;

-- LEFT OUTER JOIN: բոլոր օգտվողները, նույնիսկ նրանք, ովքեր չեն պատվիրել
SELECT * FROM users LEFT JOIN orders ON users.id = orders.user_id;