פרק 2: שדות מחושבים בשפת SQL

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

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

 

לדוגמה: 

 

select

       order_id,

       price,

       price*1.17 as price_with_vat

from

       order_items

 

בדוגמה המופיע יצרנו שדה מחושב חדש בשם price_with_vat.

בשדה החדש הכפלנו את סכום ההזמנה ב 17% כדי לשקף את המע"מ שהלקוח נדרש לשלם.

 

שדות תנאי Case When

אפשר לבצע חישובים מותנים על שדות בעזרת הוראת case when 

select

       price,

       case when price>100 then 1 else 0 end as premium_product

from

order_items

 בדוגמה הזאת הוספנו שדה מחושב שמסמן האם מוצר הוא premium .

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

 

 

select

       price,

       case

              when price<=100 then 'until 100'

              when price>100  and  price<=200 then '100-200'

              when price>200  and  price<=300 then '200-300'

              else '300 and above'

       end as premium_product

from

       order_items

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



תרגול שפת SQL

באתר strata scratch תמצאו תרגילים רבים עם שאלות עסקיות מורכבות, וממשק המאפשר כתיבה והרצה של שאילתות כך שתוכלו לבדוק האם הפתרון שלכם נכון. באתר יש גם אפשרות לתרגל תרגילים ב- Python.

התרגול באתר הוא ללא עלות, אך אפשר להירשם כדי לקבל גישה לתרגילים חדשים ופתרונות לכל התרגילים (גילוי נאות – רישום לאתר דרך הקישור מתגמל אותי בעמלה קטנה, וגולשים המגיעים דרך הקישור יכולים להשתמש בקוד קופון yuval20 על מנת לקבל 20% הנחה).

 

נכתב על ידי יובל מרנין,
לשרותי ניתוח נתונים ויצירת דוחות BI ניתן לפנות אליי ב- לינקדאיןפייסבוק או במייל: [email protected]

*** לפודקאסט של הבלוג לחצו כאן *** 

Yuval Marnin

לחברות המעוניינות בשירותי פרילנס או מנטורינג של אנליסט, ניתן לפנות אליי ל[email protected]