SQL למדעי הנתונים: הבנה ומינוף של חיבורים - KDnuggets

SQL למדעי הנתונים: הבנה ומינוף של חיבורים - KDnuggets

צומת המקור: 2805506

SQL למדעי הנתונים: הבנה ומינוף של חיבורים
תמונה מאת המחבר
 

Data science is an interdisciplinary field that relies heavily on extracting insights and making informed decisions from vast amounts of data. One of the fundamental tools in a data scientist’s toolbox is SQL (Structured Query Language), a programming language designed for managing and manipulating relational databases.

במאמר זה, אתמקד באחת התכונות החזקות ביותר של SQL: joins.

SQL Joins מאפשרים לך לשלב נתונים מטבלאות מסד נתונים מרובות בהתבסס על עמודות נפוצות. כך, תוכל למזג מידע יחד וליצור קשרים משמעותיים בין מערכי נתונים קשורים.

יש כמה סוגי חיבורי SQL:

  • הצטרפות פנימית
  • חיבור חיצוני שמאלי
  • הצטרפות חיצונית ימנית
  • צירוף חיצוני מלא
  • צלב הצטרף

בואו נסביר כל סוג.

צירוף פנימי מחזיר רק את השורות שבהן יש התאמה בשתי הטבלאות המצטרפות. הוא משלב שורות משתי טבלאות המבוססות על מפתח או עמודה משותפים, ומבטל שורות שאינן תואמות.

אנו מדמיינים זאת בצורה הבאה.
 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים
תמונה מאת המחבר
 

ב-SQL, צירוף מסוג זה מתבצע באמצעות מילות המפתח JOIN או INNER JOIN.

צירוף חיצוני שמאלי מחזיר את כל השורות מהטבלה השמאלית (או הראשונה) ואת השורות המתואמות מהטבלה הימנית (או השנייה). אם אין התאמה, הוא מחזיר ערכי NULL עבור העמודות מהטבלה הימנית.

אנחנו יכולים לדמיין את זה ככה.

 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים
תמונה מאת המחבר
 

כאשר רוצים להשתמש ב-join זה ב-SQL, אתם יכולים לעשות זאת באמצעות מילות מפתח LEFT OUTER JOIN או LEFT JOIN. הנה מאמר שמדבר על חיבור שמאלי לעומת חיבור חיצוני שמאלי.

צירוף ימני הוא ההפך מצירוף שמאלי. הוא מחזיר את כל השורות מהטבלה הימנית ואת השורות המתואמות מהטבלה השמאלית. אם אין התאמה, הוא מחזיר ערכי NULL עבור העמודות מהטבלה השמאלית.

 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים
תמונה מאת המחבר
 

ב-SQL, סוג הצטרפות זה מתבצע באמצעות מילות המפתח RIGHT OUTER JOIN או RIGHT JOIN.

צירוף חיצוני מלא מחזיר את כל השורות משתי הטבלאות, התאמת שורות במידת האפשר ומילוי ערכי NULL עבור שורות שאינן תואמות.

 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים
תמונה מאת המחבר
 

מילות המפתח ב-SQL עבור הצטרפות זו הן FULL OUTER JOIN או FULL JOIN.

סוג זה של צירוף משלב את כל השורות מטבלה אחת עם כל השורות מהטבלה השנייה. במילים אחרות, הוא מחזיר את המוצר הקרטזיאני, כלומר את כל השילובים האפשריים של שתי שורות הטבלאות.

הנה ההדמיה שתקל על ההבנה.

 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים
תמונה מאת המחבר
 

בעת הצטרפות צולבת ב-SQL, מילת המפתח היא CROSS JOIN.

כדי לבצע חיבור ב-SQL, צריך לציין את הטבלאות שאנו רוצים להצטרף, את העמודות המשמשות להתאמה, ואת סוג החיבור שאנו רוצים לבצע. התחביר הבסיסי לצירוף טבלאות ב-SQL הוא כדלקמן:

SELECT columns
FROM table1
JOIN table2
ON table1.column = table2.column;

 

דוגמה זו מראה כיצד להשתמש ב-JOIN.

אתה מפנה לטבלה הראשונה (או השמאלית) בסעיף FROM. לאחר מכן אתה עוקב אחריו עם JOIN ומפנה לטבלה השנייה (או הימנית).

ואז מגיע תנאי ההצטרפות בסעיף ON. זה המקום שבו אתה מציין באילו עמודות תשתמש כדי להצטרף לשתי הטבלאות. בדרך כלל, זו עמודה משותפת שהיא מפתח ראשי בטבלה אחת והמפתח הזר בטבלה השנייה.

הערה: מפתח ראשי הוא מזהה ייחודי עבור כל רשומה בטבלה. מפתח זר יוצר קישור בין שתי טבלאות, כלומר, זו עמודה בטבלה השנייה שמפנה לטבלה הראשונה. אנו נראה לך בדוגמאות מה זה אומר.

אם אתה רוצה להשתמש ב-LEFT JOIN, RIGHT JOIN או FULL JOIN, אתה פשוט משתמש במילות מפתח אלה במקום JOIN - כל השאר בקוד זהה לחלוטין!

הדברים קצת שונים עם CROSS JOIN. טבעו הוא להצטרף לכל שילובי השורות משתי הטבלאות. לכן אין צורך בסעיף ON, והתחביר נראה כך.

SELECT columns
FROM table1
CROSS JOIN table2;

 

במילים אחרות, אתה פשוט מתייחס לטבלה אחת ב-FROM והשנייה ב-CROSS JOIN.

לחלופין, ניתן להפנות לשתי הטבלאות ב-FROM ולהפריד ביניהן בפסיק - זהו קיצור של CROSS JOIN.

SELECT columns
FROM table1, table2;

יש גם דרך אחת ספציפית להצטרף לשולחנות - הצטרפות לשולחן עם עצמו. זה נקרא גם הצטרפות עצמית לשולחן.

זה לא בדיוק סוג של הצטרפות מובחן, מכיוון שניתן להשתמש בכל אחד מסוגי ההצטרפות שהוזכרו קודם לכן גם להצטרפות עצמית.

התחביר להצטרפות עצמית דומה למה שהראיתי לך קודם. ההבדל העיקרי הוא שאותה טבלה מוזכרת ב-FROM ו-JOIN.

SELECT columns
FROM table1 t1
JOIN table1 t2
ON t1.column = t2.column;

 

כמו כן, עליך לתת לטבלה שני כינויים כדי להבחין ביניהם. מה שאתה עושה זה להצטרף לשולחן עם עצמו ולהתייחס אליו כשני שולחנות.

רק רציתי להזכיר את זה כאן, אבל אני לא אפרט יותר. אם אתה מעוניין בהצטרפות עצמית, אנא עיין במדריך מאויר זה על הצטרפות עצמית ב-SQL.

הגיע הזמן להראות לכם איך כל מה שציינתי עובד בפועל. אני אשתמש שאלות בראיון SQL JOIN מ-StrataScratch כדי להציג כל סוג חיבור נפרד ב-SQL.

1. דוגמה להצטרפות

שאלה זו של מיקרוסופט רוצה שתפרט כל פרויקט ותחשב את תקציב הפרויקט על ידי העובד.

פרויקטים יקרים

"בהינתן רשימה של פרויקטים ועובדים שמופו לכל פרויקט, חשב לפי סכום תקציב הפרויקט שהוקצה לכל עובד. הפלט צריך לכלול את כותרת הפרויקט ואת תקציב הפרויקט מעוגל למספר השלם הקרוב ביותר. תחילה סדר את הרשימה שלך לפי פרויקטים עם התקציב הגבוה ביותר לעובד."

נתונים

השאלה נותנת שתי טבלאות.

ms_projects

תעודת זהות: int
כותרת: ורצ 'ר
תַקצִיב: int

ms_emp_projects

emp_id: int
project_id: int

כעת, מזהה העמודה בטבלה ms_projects הוא המפתח הראשי של הטבלה. את אותה עמודה ניתן למצוא בטבלה ms_emp_projects, אם כי בשם אחר: project_id. זהו המפתח הזר של הטבלה, המתייחס לטבלה הראשונה.

אשתמש בשתי העמודות הללו כדי להצטרף לטבלאות בפתרון שלי.

קופונים

SELECT title AS project, ROUND((budget/COUNT(emp_id)::FLOAT)::NUMERIC, 0) AS budget_emp_ratio
FROM ms_projects a
JOIN ms_emp_projects b ON a.id = b.project_id
GROUP BY title, budget
ORDER BY budget_emp_ratio DESC;

 

הצטרפתי לשני הטבלאות באמצעות JOIN. השולחן ms_projects מוזכר ב-FROM, בעוד ms_emp_projects מוזכר לאחר JOIN. נתתי לשני הטבלאות כינוי, מה שאיפשר לי לא להשתמש בשמות הארוכים של הטבלה בהמשך.

עכשיו, אני צריך לציין את העמודות שבהן אני רוצה להצטרף לטבלאות. כבר ציינתי אילו עמודות הן המפתח הראשי בטבלה אחת והמפתח הזר בטבלה אחרת, אז אני אשתמש בהן כאן.

אני שווה לשתי העמודות הללו כי אני רוצה לקבל את כל הנתונים שבהם מזהה הפרויקט זהה. השתמשתי גם בכינויים של הטבלאות לפני כל עמודה.

כעת, כשיש לי גישה לנתונים בשתי הטבלאות, אני יכול לרשום עמודות ב-SELECT. העמודה הראשונה היא שם הפרויקט, והעמודה השנייה מחושבת.

חישוב זה משתמש בפונקציה COUNT() כדי לספור את מספר העובדים לפי כל פרויקט. לאחר מכן אני מחלק את התקציב של כל פרויקט במספר העובדים. אני גם ממיר את התוצאה לערכים עשרוניים ומעגל אותה לאפס מקומות עשרוניים.

תְפוּקָה

הנה מה שהשאילתה מחזירה.

 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים

2. LFT JOIN דוגמה

בואו נתרגל את ההצטרפות הזו על שאלת ראיון Airbnb. הוא רוצה שתמצא את מספר ההזמנות, מספר הלקוחות והעלות הכוללת של ההזמנות עבור כל עיר.

הזמנות ופרטים של לקוחות

"מצא את מספר ההזמנות, מספר הלקוחות והעלות הכוללת של ההזמנות עבור כל עיר. כלול רק ערים שביצעו לפחות 5 הזמנות וספור את כל הלקוחות בכל עיר גם אם לא ביצעו הזמנה.

פלט כל חישוב יחד עם שם העיר המתאים."

נתונים

נותנים לך את הטבלאות לקוחות, ו הזמנות.

לקוחות

תעודת זהות: int
שם פרטי: ורצ 'ר
שם משפחה: ורצ 'ר
עִיר: ורצ 'ר
כתובת: ורצ 'ר
מספר טלפון: ורצ 'ר

הזמנות

תעודת זהות: int
קוד_מזהה: int
תאריך הזמנה: datetime
פרטי הזמנה: ורצ 'ר
total_order_cost: int

העמודות המשותפות הן מזהות מהטבלה לקוחות ו-cust_id מהטבלה הזמנות. אני אשתמש בעמודות האלה כדי להצטרף לטבלאות.

קופונים

הנה איך לפתור שאלה זו באמצעות LEFT JOIN.

SELECT c.city, COUNT(DISTINCT o.id) AS orders_per_city, COUNT(DISTINCT c.id) AS customers_per_city, SUM(o.total_order_cost) AS orders_cost_per_city
FROM customers c
LEFT JOIN orders o ON c.id = o.cust_id
GROUP BY c.city
HAVING COUNT(o.id) >=5;

 

אני מתייחס לטבלה לקוחות ב-FROM (זה הטבלה השמאלית שלנו) ו-LEFT JOIN איתו הזמנות בעמודות זיהוי הלקוח.

כעת אני יכול לבחור את העיר, להשתמש ב-COUNT() כדי לקבל את מספר ההזמנות והלקוחות לפי עיר, ולהשתמש ב-SUM() כדי לחשב את עלות ההזמנות הכוללת לפי עיר.

כדי לקבל את כל החישובים האלה לפי עיר, אני מקבץ את הפלט לפי עיר.

יש בקשה נוספת אחת בשאלה: "כלול רק ערים שביצעו לפחות 5 הזמנות..." אני משתמש ב-HAVING כדי להציג רק ערים עם חמש הזמנות או יותר כדי להשיג זאת.

השאלה היא למה השתמשתי LEFT JOIN ולא להצטרף? The clue is in the question:”…and count all customers in each city even if they did not place an order.” It’s possible that not all customers have placed orders. This means I want to show all customers from the table לקוחות, שמתאים לחלוטין להגדרה של ה-LEFT JOIN.

לו הייתי משתמש ב-JOIN, התוצאה הייתה שגויה, מכיוון שהייתי מתגעגע ללקוחות שלא ביצעו הזמנות.

הערה: המורכבות של חיבורים ב-SQL לא באה לידי ביטוי בתחביר שלהם אלא בסמנטיקה שלהם! כפי שראית, כל הצטרפות נכתבת באותו אופן, רק מילת המפתח משתנה. עם זאת, כל הצטרפות פועלת בצורה שונה, ולכן יכולה להפיק תוצאות שונות בהתאם לנתונים. בגלל זה, חשוב שתבינו היטב מה עושה כל הצטרפות ותבחרו את זה שיחזיר בדיוק את מה שאתם רוצים!

תְפוּקָה

עכשיו, בואו נסתכל על הפלט.

 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים

3. דוגמה להצטרפות נכונה

ה-RIGHT JOIN הוא תמונת המראה של LEFT JOIN. לכן יכולתי לפתור בקלות את הבעיה הקודמת באמצעות RIGHT JOIN. תן לי להראות לך איך לעשות את זה.

נתונים

השולחנות נשארים זהים; אני פשוט אשתמש בסוג אחר של הצטרפות.

קופונים

SELECT c.city, COUNT(DISTINCT o.id) AS orders_per_city, COUNT(DISTINCT c.id) AS customers_per_city, SUM(o.total_order_cost) AS orders_cost_per_city
FROM orders o
RIGHT JOIN customers c ON o.cust_id = c.id GROUP BY c.city
HAVING COUNT(o.id) >=5;

 

הנה מה שהשתנה. בזמן שאני משתמש ב- RIGHT JOIN, שיניתי את סדר הטבלאות. עכשיו השולחן הזמנות הופך להיות השמאלי, והשולחן לקוחות האחד הנכון. תנאי ההצטרפות נשאר זהה. פשוט החלפתי את סדר העמודות כך שישקף את סדר הטבלאות, אבל אין צורך לעשות זאת.

על ידי החלפת סדר השולחנות ושימוש ב- RIGHT JOIN, אני שוב אוציא את כל הלקוחות, גם אם הם לא ביצעו הזמנות.

שאר השאילתה זהה לדוגמא הקודמת. אותו דבר לגבי הפלט.

הערה: בפועל, הצטרף ימינה הוא בשימוש נדיר יחסית. ה-LEFT JOIN נראה טבעי יותר למשתמשי SQL, ולכן הם משתמשים בו לעתים קרובות יותר. כל מה שניתן לעשות עם RIGHT JOIN יכול להיעשות גם עם LEFT JOIN. בגלל זה, אין מצב ספציפי שבו ניתן להעדיף את RIGHT JOIN.

תְפוּקָה

 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים

4. דוגמה להצטרפות מלאה

השאלה של Salesforce וטסלה רוצה שתספור את ההפרש נטו בין מספר חברות המוצרים שהושקו בשנת 2020 למספר חברות המוצרים שהושקו בשנה הקודמת.

מוצרים חדשים

"ניתן לך טבלה של השקות מוצרים לפי חברה לפי שנה. כתוב שאילתה כדי לספור את ההפרש נטו בין מספר חברות המוצרים שהושקו בשנת 2020 למספר חברות המוצרים שהושקו בשנה הקודמת. פלט שם החברות והפרש נטו של מוצרי נטו שיצאו לשנת 2020 בהשוואה לשנה הקודמת".

נתונים

השאלה מספקת טבלה אחת עם העמודות הבאות.

מכונית_השקות

שָׁנָה: int
שם החברה: ורצ 'ר
שם מוצר: ורצ 'ר

איך לעזאזל אני אצטרף לשולחנות כשיש רק שולחן אחד? הממ, בוא נראה גם את זה!

קופונים

השאילתה הזו קצת יותר מסובכת, אז אני אגלה אותה בהדרגה.

SELECT company_name, product_name AS brand_2020
FROM car_launches
WHERE YEAR = 2020;

 

הצהרת SELECT הראשונה מוצאת את החברה ואת שם המוצר בשנת 2020. שאילתה זו תהפוך מאוחר יותר לשאילתת משנה.

השאלה רוצה שתמצא את ההבדל בין 2020 ל-2019. אז בוא נכתוב את אותה שאילתה אבל עבור 2019.

SELECT company_name, product_name AS brand_2019
FROM car_launches
WHERE YEAR = 2019;

 

כעת אהפוך את השאילתות הללו לשאילתות משנה ואצטרף אליהן באמצעות ה-FULL OUTER JOIN.

SELECT *
FROM (SELECT company_name, product_name AS brand_2020 FROM car_launches WHERE YEAR = 2020) a
FULL OUTER JOIN (SELECT company_name, product_name AS brand_2019 FROM car_launches WHERE YEAR = 2019) b ON a.company_name = b.company_name;

 

ניתן להתייחס לשאילתות משנה כאל טבלאות, ולכן ניתן להצטרף אליהן. נתתי לשאילתת המשנה הראשונה כינוי, ושמתי אותה בסעיף FROM. לאחר מכן אני משתמש ב-FULL OUTER JOIN כדי להצטרף אליו עם שאילתת המשנה השנייה בעמודת שם החברה.

על ידי שימוש בסוג זה של צירוף SQL, אאחד את כל החברות והמוצרים ב-2020 עם כל החברות והמוצרים ב-2019.

 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים
 

עכשיו אני יכול לסיים את השאילתה שלי. בוא נבחר את שם החברה. כמו כן, אני אשתמש בפונקציה COUNT() כדי למצוא את מספר המוצרים שהושקו בכל שנה ואז להחסיר אותו כדי לקבל את ההפרש. לבסוף, אקבץ את הפלט לפי חברה ואמיין אותו גם לפי חברה בסדר אלפביתי.

הנה כל השאילתה.

SELECT a.company_name, (COUNT(DISTINCT a.brand_2020)-COUNT(DISTINCT b.brand_2019)) AS net_products
FROM (SELECT company_name, product_name AS brand_2020 FROM car_launches WHERE YEAR = 2020) a
FULL OUTER JOIN (SELECT company_name, product_name AS brand_2019 FROM car_launches WHERE YEAR = 2019) b ON a.company_name = b.company_name
GROUP BY a.company_name
ORDER BY company_name;

תְפוּקָה

להלן רשימת החברות וההבדלים במוצרים שהושקו בין 2020 ל-2019.

 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים

5. CROSS JOIN דוגמה

שאלה זו של דלויט נהדר להראות כיצד CROSS JOIN עובד.

מקסימום שני מספרים

"בהינתן עמודה בודדת של מספרים, שקול את כל התמורות האפשריות של שני מספרים בהנחה שצמדי מספרים (x,y) ו-(y,x) הם שתי תמורות שונות. לאחר מכן, עבור כל תמורה, מצא את המקסימום של שני המספרים.

פלט שלוש עמודות: המספר הראשון, המספר השני והמקסימום מבין השניים."

השאלה רוצה שתמצא את כל התמורות האפשריות של שני מספרים בהנחה שזוגות מספרים (x,y) ו-(y,x) הם שתי תמורות שונות. לאחר מכן, עלינו למצוא את המקסימום של המספרים עבור כל תמורה.

נתונים

השאלה נותנת לנו טבלה אחת עם עמודה אחת.

deloitte_numbers

מספר: int

קופונים

קוד זה הוא דוגמה ל-CROSS JOIN, אבל גם ל-self join.

SELECT dn1.number AS number1, dn2.number AS number2, CASE WHEN dn1.number > dn2.number THEN dn1.number ELSE dn2.number END AS max_number
FROM deloitte_numbers AS dn1
CROSS JOIN deloitte_numbers AS dn2;

 

אני מתייחס לטבלה ב-FROM ונותן לה כינוי אחד. ואז אני CROSS JOIN זה עם עצמו על ידי הפניה אחרי CROSS JOIN ונותן לטבלה כינוי נוסף.

עכשיו אפשר להשתמש בטבלה אחת מכיוון שהם שניים. אני בוחר את מספר העמודה מכל טבלה. לאחר מכן אני משתמש במשפט CASE כדי להגדיר תנאי שיציג את המספר המרבי של שני המספרים.

מדוע משתמשים כאן ב-CROSS JOIN? זכור, זהו סוג של SQL join שיציג את כל השילובים של כל השורות מכל הטבלאות. זה בדיוק מה שהשאלה שואלת!

תְפוּקָה

הנה תמונת המצב של כל השילובים והמספר הגבוה מבין השניים.

 

SQL למדעי הנתונים: הבנה ומינוף של חיבורים

עכשיו כשאתה יודע איך להשתמש ב-SQL מצטרפים, השאלה היא איך לנצל את הידע הזה במדעי הנתונים.

SQL Joins ממלאים תפקיד מכריע במשימות מדעיות כמו חקר נתונים, ניקוי נתונים והנדסת תכונות.

להלן מספר דוגמאות לאופן שבו ניתן למנף חיבורי SQL:

  1. שילוב נתונים: צירוף טבלאות מאפשר לך להפגיש מקורות נתונים שונים, מה שמאפשר לך לנתח קשרים ומתאמים על פני מערכי נתונים מרובים. לדוגמה, הצטרפות לטבלת לקוחות עם טבלת עסקאות יכולה לספק תובנות לגבי התנהגות לקוחות ודפוסי רכישה.
  1. אימות מידע: ניתן להשתמש בהצטרפות כדי לאמת איכות ושלמות הנתונים. על ידי השוואת נתונים מטבלאות שונות, תוכל לזהות חוסר עקביות, ערכים חסרים או חריגים. זה עוזר לך בניקוי הנתונים ומבטיח שהנתונים המשמשים לניתוח מדויקים ואמינים.
  1. הנדסת תכונות: הצטרפות יכולה להיות מכרעת ביצירת תכונות חדשות עבור מודלים של למידת מכונה. על ידי מיזוג טבלאות רלוונטיות, תוכל לחלץ מידע משמעותי וליצור תכונות הלוכדות קשרים חשובים בתוך הנתונים. זה יכול לשפר את כוח הניבוי של הדגמים שלך.
  1. צבירה וניתוח: הצטרפות מאפשרות לך לבצע צבירה וניתוחים מורכבים על פני טבלאות מרובות. על ידי שילוב נתונים ממקורות שונים, תוכל לקבל מבט מקיף על הנתונים ולהפיק תובנות חשובות. לדוגמה, הצטרפות לטבלת מכירות עם טבלת מוצרים יכולה לעזור לך לנתח את ביצועי המכירות לפי קטגוריית מוצר או אזור.

כפי שכבר ציינתי, המורכבות של חיבורים לא מופיעה בתחביר שלהם. ראית שהתחביר הוא פשוט יחסית.

שיטות העבודה המומלצות להצטרפות משקפות גם זאת, מכיוון שהן אינן עוסקות בקידוד עצמו אלא במה שהצטרפות עושה וכיצד היא מתפקדת.

כדי להפיק את המרב מהצטרפות ב-SQL, שקול את השיטות המומלצות הבאות.

  1. הבן את הנתונים שלך: הכר את המבנה והקשרים בתוך הנתונים שלך. זה יעזור לך לבחור את סוג ההצטרפות המתאים ולבחור את העמודות הנכונות להתאמה.
  1. השתמש באינדקסים: אם הטבלאות שלך גדולות או מצטרפות לעתים קרובות, שקול להוסיף אינדקסים על העמודות המשמשות להצטרפות. אינדקסים יכולים לשפר משמעותית את ביצועי השאילתות.
  1. שימו לב לביצועים: הצטרפות לשולחנות גדולים או שולחנות מרובים יכולה להיות יקרה מבחינה חישובית. בצע אופטימיזציה של השאילתות שלך על ידי סינון נתונים, שימוש בסוגי הצטרפות מתאימים, ובחינת השימוש בטבלאות או שאילתות משנה זמניות.
  1. בדיקה ואימות: אמת תמיד את תוצאות ההצטרפות שלך כדי להבטיח נכונות. בצע בדיקות שפיות וודא שהנתונים המצורפים תואמים את הציפיות וההיגיון העסקי שלך.

SQL Joins הם מושג בסיסי המאפשר לך כמדען נתונים למזג ולנתח נתונים ממקורות מרובים. על ידי הבנת הסוגים השונים של חיבורי SQL, שליטה בתחביר שלהם ומינוף יעיל שלהם, מדעני נתונים יכולים לפתוח תובנות חשובות, לאמת את איכות הנתונים ולהניע קבלת החלטות מונעות נתונים.

הראיתי לך איך לעשות את זה בחמש דוגמאות. עכשיו זה תלוי בך לרתום את הכוח של SQL ולהצטרף לפרויקטים שלך במדעי הנתונים ולהשיג תוצאות טובות יותר.
 
 
נייט רוזידי הוא מדען נתונים ואסטרטגיית מוצר. הוא גם פרופסור עזר המלמד אנליטיקה, והוא המייסד של StrataScratch, פלטפורמה המסייעת למדעני נתונים להתכונן לראיונות שלהם עם שאלות ראיונות אמיתיות מחברות מובילות. התחבר אליו הלאה טוויטר: StrataScratch or לינקדין.
 

בול זמן:

עוד מ KDnuggets