PracticU

פקודת case - חלק 2

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

פקודת case - חלק 2
השיעור ממשיך את פקודת CASE, והפעם משתמשים בה בתוך SELECT עם פונקציית סיכום כדי לספור מוצרים לפי קבוצות מחיר, בשאילתה אחת.
השלבים העיקריים
1. התבנית: CASE WHEN תנאי THEN ערך ELSE ערך END. אפשר לשרשר כמה WHEN, ו-ELSE מכסה את כל השאר. הפקודה נסגרת ב-END.
2. טבלת Products: מכילה את מחיר היחידה של כל מוצר. המטרה לחלק את המוצרים לקבוצות מחיר.
3. ספירה בעזרת SUM: בתוך SUM כותבים CASE שמחזיר 1 כשהתנאי מתקיים ו-0 אחרת. סכום האחדים הוא מספר המוצרים שבטווח.
4. טווחי מחיר: בדוגמה: בין 2.5 ל-20, בין 21 ל-80, ומ-81 עד 500. כל מוצר נכנס לטווח אחד בלבד.
5. סך הכול: COUNT(*) נותן את מספר המוצרים הכולל, ומופיע בשאילתה כעמודה נוספת. בדוגמה הסכום הוא 77.
6. כינויים: אפשר לתת כינוי לעמודה בתחילתה בצורה שם = ביטוי, או בסופה בעזרת AS.
שימו לב
הערך 0 שנכנס ל-SUM לא משנה את הסכום, ולכן כל טווח נספר בנפרד.
בסיום תוכלו לחלק נתונים לקטגוריות ולספור אותם בשאילתת SELECT אחת.
השיעור הבא בקורס: פקודת case - חלק 3

פרקי ההרצאה: פקודת case - חלק 2

  1. 00:00

    מבנה CASE SEARCH עם WHEN ו-THEN

  2. 00:54

    סיווג מחירי מוצרים לזול ובינוני ויקר

  3. 01:32

    שימוש ב-CASE בתוך SELECT עם SUM

  4. 02:09

    ספירה מותנית עם SUM שמחזירה 1 או 0

תמלול ההרצאה: פקודת case - חלק 2

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

  1. 00:01

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

  2. 00:14

    אז הנושא שלנו הוא Case Search ובואו נראה את התבנית כיצד אני יוצר את זה. Case When אני מתחיל כאן באיזשהו תנאי בוליאני שאותו אנחנו מכניסים בתוך ה-When בעצמו הראשון ובהתאם לקיומו או אי קיומו של התנאי במידה והותרו אז then אנחנו מבצעים פקודה מסוימת.

  3. 00:35

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

  4. 00:47

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

  5. 01:00

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

  6. 01:08

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

  7. 01:36

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

  8. 01:58

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

  9. 02:27

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

  10. 02:51

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

לקורס המלא: קורס SQL ו‑DBA אפליקטיבי

ההרצאה הקודמת: פקודת case - חלק 1

ההרצאה הבאה: פקודת case - חלק 3

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

  • סקריפט עם case
  • כתיבת Test Case
  • משפט Switch, Case - חלק 1
  • ביטויי Switch Case

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

  • קורס NoSQL - MongoDB
  • קורס SSIS
  • קורס BI - ניתוח מסדי נתונים - Qlik Sense
  • קורס Power BI