צירוף שמאלי וימני
צירוף שמאלי
, LEFT JOINLEFT OUTER JOINהמכונה גם , הוא סוג של פעולת SQL המשמרת את כל השורות מהטבלה הימנית (או הראשונה) בשאילתה, בין אם קיימת שורה תואמת בטבלה הימנית (או השניה).
כאשר נמצאה התאמה, העמודות מהטבלה הימנית מאוכלסות בערךים המתאימים. עם זאת, אם לא קיימת התאמה, התוצאה כוללת ערכי Null בעמודות שמקורן בטבלה הנכונה.
צירוף זה שימושי כאשר עליך ליצור רשימה מקיפה מטבלה אחת בעת צירוף נתונים קשורים מטבלה אחרת, גם כאשר קשרי גומלין כאלה אינם שלמים או נעדרים.
SELECT customers.customer_name, orders.order_id
FROM sales.customers AS customers
LEFT JOIN sales.orders AS orders ON customers.customer_id = orders.customer_id;
שאילתת SQL המשתמשת באחזור LEFT JOIN כל הלקוחות מהטבלה sales.customers , כולל אלה ללא הזמנות תואמות בטבלה sales.orders . המשפט ON מציין כי השדה מקשר customer_id בין שתי הטבלאות.
עבור לקוחות ביצעו הזמנות, מוצגת order_idorders הטבלה מהטבלה. עם זאת, אם ללקוח אין הזמנות, התוצאה עדיין כוללת את הלקוח, כאשר order_id העמודה מציגה ערכי Null.
צירוף ימני
, RIGHT JOINRIGHT OUTER JOINהמכונה גם , היא פעולת SQL שמבטיחה שכל השורות מהטבלה הימנית (או השניה) ייכללו בתוצאה, בין אם קיימת שורה תואמת בטבלה השמאלית (או הראשונה).
במקרים שבהם לא נמצאה התאמה, העמודות מהטבלה הימנית מציגות ערכי Null.
סוג זה של צירוף משמש בדרך כלל כדי להתמקד בנתונים בטבלה השמאלית, ומוסיף גם מידע מהטבלה הימנית בכל מקום שבו קיימים קשרי גומלין.
SELECT customers.customer_name, orders.order_id
FROM sales.customers AS customers
RIGHT JOIN sales.orders AS orders ON customers.customer_id = orders.customer_id;
שאילתה זו מאחזרת sales.orders את כל השורות מהטבלה ומבטיחה שכל סדר נכלל בתוצאה, גם אם אין ערך משויך בטבלה sales.customers .
המשפט ON מציין את קשר הגומלין בין שתי הטבלאות באמצעות customer_id העמודה. אם הזמנה כוללת לקוח תואם, customer_name העמודה מאוכלסת בערכי customer_name, Null מוצגים עבור רשומות לא תואמות.