PracticU

שימוש בפונקציות Grouping

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

שימוש בפונקציות Grouping
פונקציות aggregate (או פונקציות grouping) פועלות על קבוצה של ערכים ומחזירות תוצאה אחת, בניגוד לפונקציה סקלרית שפועלת על כל ערך בנפרד. ההרצאה מראה אותן על טבלת Products ואחר כך מחלקת לקבוצות עם Group By.
הפונקציות
1. מינימום, מקסימום וממוצע: Min(UnitPrice) נותן את המחיר הנמוך ביותר (2.5), Max את הגבוה, ו-Avg את הממוצע. מתקבלת שורה אחת, והכינוי נקבע עם as, למשל MinimumPrice.
2. Count(עמודה): סופרת רק רשומות שאינן NULL. ב-Customers, Count(Region) נותן 31.
3. Count(*): סופרת את כל הרשומות, והתוצאה היא 91 לקוחות. ההפרש בין 91 ל-31 הוא הלקוחות בלי Region.
4. Sum: מסכמת את הערכים. המרצה מציין שאין היגיון אמיתי לסכום מחירים, וזה רק לדוגמה.
חלוקה לקבוצות עם Group By
כשמוסיפים Group By SupplierID, הפונקציה מחושבת בנפרד לכל קוד ספק, ולא על כלל הרשומות. כך מתקבלים 29 ממוצעים, כי יש 29 ספקים. אפשר להציג את SupplierID לצד Avg(UnitPrice), ולהוסיף עוד פונקציות כמו Min ו-Max באותה שאילתה. אפשר לפרוס שאילתה על כמה שורות.
אחרי ההרצאה אפשר לחשב סיכומים כלליים וגם סיכומים לכל קבוצה, למשל מחיר ממוצע, מינימלי ומקסימלי לכל ספק.
השיעור הבא בקורס: יצירת תת-שאילתות ב-SQL

פרקי ההרצאה: שימוש בפונקציות Grouping

  1. 00:00

    מהן פונקציות Aggregate

  2. 00:40

    מציאת מינימום ומקסימום

  3. 01:15

    ממוצע עם AVG וספירה עם COUNT

  4. 01:56

    ספירת רשומות עם COUNT כוכבית

  5. 02:29

    סיכום ערכים עם SUM

  6. 03:06

    קיבוץ נתונים עם GROUP BY

תמלול ההרצאה: שימוש בפונקציות Grouping

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

  1. 00:02

    סוג נוסף של פונקציות שהוא די נדרש נקרא aggregate functions ויש לזה עוד שם group functions. בואו נבין מה בעצם הפונקציות האלה יודעות לבצע.

  2. 00:13

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

  3. 00:38

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

  4. 00:48

    לדוגמה אנחנו רוצים למצוא את המחיר המינימלי זה יהיה מין unit price. בואו נריץ, הוא אומר לי המחיר המינימלי 2.5. בואו ניתן לזה שם as minimum price בואו נמצא את המחיר המקסימלי.

  5. 01:01

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

  6. 01:17

    יש לנו כמובן Average, בואו נגדיר כאן Average Price. זה הממוצע של כל המחירים. פונקציה מאוד מאוד נדרשת, נקראת Count, זה Total Prices.

  7. 01:31

    והיא מחזירה לי כמה רשומות יש שהם לא נאלים. אנחנו יכולים לראות את זה לדוגמה אם אנחנו אומרים לו תחזיר לנו את ה-region שדיברנו עליו מקודם, total regions ב-Customers.

  8. 01:50

    אז הוא אומר לנו שיש לנו 31 Regions שהם לא נאלים. אם אנחנו רוצים לדעת כמה סך הכל פריטים יש, כמה סך הכל הרשומות, אז אנחנו משתמשים ב-Count כוכבים ויהיה Total Customers.

  9. 02:07

    יש לנו 91 לקוחות אבל רק 31 Regions שהם לא נאלים. Total Non-Null Regions זה בעצם היותר מדויק. אז אם אני רק רוצה לבדוק כמה רשומות יש זה Count כוכבית.

  10. 02:24

    יש לנו גם כמובן Sum אם אנחנו רוצים לסכום משהו למרות שאין כל כך היגיון בלסכום את כל המחירים אבל רק לצורך הדוגמא some prices וזה הסכום של כלל המחירים.

  11. 02:39

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

  12. 02:51

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

  13. 03:21

    קוד הספק זאת אומרת קוד ספק אחד עבורו תבצע average קוד ספק 2 עבורו תבצע Average. ברגע שאתם

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

ההרצאה הקודמת: שימוש בפונקציות סקלריות ב-SQL

ההרצאה הבאה: יצירת תת-שאילתות ב-SQL

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

  • שימוש ב-useEffect - חלק 1
  • שימוש ב-NuGet
  • שימוש ב-ModelState
  • בדיקות מקרי שימוש

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

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