PracticU

Qlik Join - חלק 5

בלי כתוביותעם כתוביות
PracticU › קורס BI - ניתוח מסדי נתונים - Qlik Sense › Qlik Join - חלק 5
מילון מושגים:
Qlik - פלטפורמה לניתוח נתונים ולהצגתם בלוחות מחוונים אינטראקטיביים (Business Intelligence).
Join - פעולת SQL שמשלבת שורות משתי טבלאות או יותר על בסיס קשר ביניהן.

Qlik Join - חלק 5
בשיעור הזה מסכמים את חישוב הסכום אחרי ההנחה, ומראים למה חשוב לבדוק גם מקרים שבהם אין הנחה.
השרשרת כולה
1. מיפוי לפי מספר הזמנה: טבלת ההנחות נטענת כמיפוי לפי Order ID, והיא נשענת על הלקוח והשנה שנבדקו בשיעור הקודם.
2. Left Join על Order Items: טבלת order items מחוברת לעצמה לפי Order Item ID, ונוסף שדה חדש בשם amount after discount.
3. ערך ברירת מחדל: כשאין הנחה, המיפוי מחזיר 0, והסכום נשאר כפי שהיה.
בדיקת התוצאות
1. שורות בלי הנחה מציגות את אותו סכום בשני השדות.
2. לקוח 79 ב-2012 עם 5% הנחה: הסכום 167.4 ירד ל-159.03.
3. הזמנה עם 8% הנחה: הסכום 109.5 ירד ל-100.74.
כשממיינים לפי הנחה, השורות שקיבלו הנחה עולות למעלה, והחישוב נראה נכון.
לקח
כשמכניסים נתונים שמגיעים מחוץ למערכת, כמו קובץ הנחות מכספים או משירות לקוחות, לא תמיד ברור אם יש התייחסות לכל המקרים. מקרה אחד שלא טופל, למשל לקוח בלי הנחה, יכול לעוות את הסכומים ולהוביל להחלטות שגויות.
השיעור הבא בקורס: Qlik Join - חלק 6

פרקי ההרצאה: Qlik Join - חלק 5

  1. 00:00

    סיכום בניית מיפוי ההנחות

  2. 00:56

    חישוב Amount After Discount

  3. 01:53

    בדיקת התוצאות בטבלת Order Items

  4. 02:51

    הצגת השדות לצורך בדיקה

  5. 03:27

    מיון ובדיקת מקרים עם הנחה

  6. 04:24

    הנחות מקובץ חיצוני ונתונים שגויים

  7. 05:21

    סוג Join נוסף: Inner Join

תמלול ההרצאה: Qlik Join - חלק 5

הטקסט המלא של הדקות הראשונות בהרצאה «Qlik Join - חלק 5» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

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

  2. 00:16

    עשינו את זה ב-Left Join to Order, שם נמצא גם ה-Customer ID וגם ה-Order EAR. לפי שני השדות המשותפים הוא בעצם הגדיר אחוז הנחה במקרים שאליהם התייחסנו. במקרים שלא התייחסנו, השדה נשאר נ"ל.

  3. 00:29

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

  4. 00:56

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

  5. 01:24

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

  6. 01:47

    אז באמת בטבלת order items נוצר לנו שדה amount after discount בוא נראה מה אנחנו רואים פה אז מעניין מה שקרה יצא לנו שcustomer ריידי קצת קשה לדעת כי אנחנו לא יודעים מה הcustomer ריידי אבל בוא נראה מה בעצם אני מסתכל אני רואה שבשורה הראשונה האמרנט המכירי הוא 168, אבל האמרנט אחר דיסקאונט הוא 151.2,

  7. 02:24

    זאת אומרת שיש פה הנחה, גם פה יש הנחה, 98 לעומת 88.2. פה ב-41 אין הנחה, 77 נשאר 77 וגם מיד אחרי זה 1484 נשאר 1484. אז בשביל לתחקר את זה יותר טוב אנחנו נלך לתצוגה וממש נביא את השדות שאנחנו רוצים.

  8. 02:45

    נשאיר את זה ככה, אני אבטל רק את הסינון. ואני רוצה להוסיף פה את ה-order, יש לנו, בואו קצת נעשה סדר, נביא את ה-Order ID בהתחלה, Customer ID שלו, זה בסדר, את השנה.

  9. 02:57

    לפני הדיסקאונט אני רוצה להביא את ה... לא, הדיסקאונט יכול להישאר פה, אני רוצה אחרי זה להביא את ה-Order Item ID. ועכשיו אני רוצה להביא את ה-Amount, נעשה את זה כ-Measure, לא, נעשה את זה כ-Dimension, זה לא משנה, אנחנו לא מבצעים פה שום סכימות.

  10. 03:16

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

  11. 03:36

    אני אמיין אגן דיסקאונט ואז בעצם אני מקפיץ למעלה את אלו שהיה להם הנחה אז אני באמת רואה שבאמת זה לקוח 79 2012 הגדרנו לו 5% הנחה האמאונט לפני ההנחה היה 167.4 והאמאונט אפטר דיסקאונט באמת הוא פחות כי החלנו בעצם הורדנו מה167.4 5% הנחה מה167.4 שזה יוצא 159.0.3 זה בדיוק מה שרצינו גם בשורות הבאות של 0.08, השכור המקורי

  12. 04:06

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

  13. 04:19

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

  14. 04:28

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

  15. 04:43

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

  16. 05:03

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

  17. 05:29

    שיש רשומות בשני הצדדים אם יש רשומות שאין להם רשומה תואמת בטבלה השנייה הוא לא יטען

לקורס המלא: קורס BI אונליין עם Qlik Sense

ההרצאה הקודמת: Qlik Join - חלק 4

ההרצאה הבאה: Qlik Join - חלק 6

הרצאות קשורות מקורסים אחרים

  • פקודת Select עם Join
  • שליפת קטגוריה עם כל המוצרים שלה - MongoDB Join

קורסים נוספים במסלול

  • קורס DBA אפליקטיבי - שפת SQL למתחילים
  • קורס NoSQL - MongoDB
  • קורס SSIS
  • קורס Power BI