Junior — Middle
გთხოვთ, ახსნათ INNER JOIN და OUTER JOIN შორის განსხვავება SQL-ში და რომელ სიტუაციებში გამოიყენება თითოეული.
sobes.tech AI
პასუხი AI-სგან
INNER JOIN მხოლოდ იმ სვეტებს აბრუნებს, რომლებიც ორივე ცხრილში ემთხვევა შეკავშირების პირობას.
OUTER JOIN აბრუნებს ყველა სვეტს ერთ ცხრილში და შესაბამის სვეტებს მეორეში. თუ შესაბამისობა არ არის, ადგილები, სადაც მონაცემები აკლია, იქნება NULL.
OUTER JOIN-ის ტიპები:
- LEFT OUTER JOIN — მარცხენა ცხრილის ყველა სვეტი + შესაბამისი მარჯვენა სვეტები.
- RIGHT OUTER JOIN — მარჯვენა ცხრილის ყველა სვეტი + შესაბამისი მარცხენა სვეტები.
- FULL OUTER JOIN — ორივე ცხრილის ყველა სვეტი, სადაც შესაბამისობა არ არის, იქნება NULL.
გამოყენების მაგალითი:
- INNER JOIN — როდესაც საჭიროა მხოლოდ დაკავშირებული მონაცემები, მაგალითად, შეკვეთები არსებული მომხმარებლებით.
- LEFT OUTER JOIN — როდესაც გსურთ მიიღოთ ყველა მომხმარებელი, მათ შორის, რომლებსაც შეკვეთები არ აქვთ.
SQL მაგალითი:
SELECT customers.name, orders.id
FROM customers
LEFT JOIN orders ON customers.id = orders.customer_id;
ეს შეკითხვა დააბრუნებს ყველა მომხმარებელს და მათი შეკვეთებს, თუ არსებობს, წინააღმდეგ შემთხვევაში NULL შეკვეთებისთვის.