המדריך נכתב על ידי יובל מרנין.
למידע על שרותי מנטורינג של דאטה אנליסט לחצו כאן.
בפרק זה נלמד על הוראת union בשפת SQL.
באמצעות הוראתall union ניתן לצרף את הפלט של שני שאילתות לטבלה אחת.
למשל – אם נרצה לראות את כל הלקוחות שיש לנו במערכת, ללא קשר לאם הם הזמינו או סתם רשומים בטבלת הלקוחות נריץ את השאילתה הבאה:
select
customer_id
from
orders
union all
select
customer_id
from
customers
בשאילתה לפנינו חיברנו רק את עמודת customer_id , ניתן להוסיף עמודות ככל שנרצה אך יש להקפיד שסדר המשתנים יהיה מאותו הסוג. אם למשל המשתנה הראשון בשליפה העליונה הוא מחרוזת גם השדה בשליפה התחתנה חייב להיות מחרוזת.
כיוון שהדאטה-בייס חיבור את שני השליפות אחת מעל השניה כפי שהם יצאו בתתי שאילתות, יתכן שיהיו לנו הרבה מספרי לקוחות כפולים. כדי למנוע את זה ניתן להשתמש בהוראת union שמתפקדת כמו union all אך מסירה ערכים כפולים.
select
customer_id
from
orders
union
select
customer_id
from
customers
ההבדל בין Join ל Union
אם בהוראות join הוספנו לשורות בטבלה עמודות מטבלה אחרת ע"י חיבור של הטבלאות עם שדה מתאים, ב- union אנחנו מחברים את השורות של תתי השאילתות ולטבלה אחת.
תרגול שפת SQL
באתר strata scratch תמצאו תרגילים רבים עם שאלות עסקיות מורכבות, וממשק המאפשר כתיבה והרצה של שאילתות כך שתוכלו לבדוק האם הפתרון שלכם נכון. באתר יש גם אפשרות לתרגל תרגילים ב- Python.
התרגול באתר הוא ללא עלות, אך אפשר להירשם כדי לקבל גישה לתרגילים חדשים ופתרונות לכל התרגילים (גילוי נאות – רישום לאתר דרך הקישור מתגמל אותי בעמלה קטנה, וגולשים המגיעים דרך הקישור יכולים להשתמש בקוד קופון yuval20 על מנת לקבל 20% הנחה).
נכתב על ידי יובל מרנין,
לשרותי ניתוח נתונים ויצירת דוחות BI ניתן לפנות אליי ב- לינקדאין, פייסבוק או במייל: [email protected]
*** לפודקאסט של הבלוג לחצו כאן ***
פרק קודם – פרק 6: חיבורי טבלאות מורכבים