הפיכת ערך שורה (מילולי) לעמודה
SQL#והפעם- המשך לפוסט הקודם, pivot עבור varchar
הבעיה שלנו היא ש…
בפוסט הקודם למדנו ליצור pivot table עבור ערכים מספריים, אבל מה עם מדובר בערכים מילוליים (מסוג varchar)?
הטיפ שלי
במידה ומדובר בערכים מסוג varchar נשתמש בפונקציות האגרגציה max/min
בואו ננסה את זה בפועל
הטבלה שלנו: occupation:
name | occupation |
---|---|
‘Naama’ | ‘Teacher’ |
‘Yael’ | ‘Seller’ |
‘Efrat’ | ‘Seller’ |
‘Bar’ | ‘Programmer’ |
‘Sagit’ | ‘Programmer’ |
‘Noam’ | ‘Teacher’ |
‘David’ | ‘Seller’ |
‘Aviv’ | ‘Teacher’ |
‘Pnina’ | ‘Programmer’ |
‘Shosh’ | ‘Baker’ |
הפקודות שנבצע:
תוצאה:
Programmer | Teacher | Seller | Baker |
---|---|---|---|
‘Bar’ | ‘Aviv’ | ‘David’ | ‘Shosh’ |
‘Pnina’ | ‘Naama’ | ‘Efrat’ | NULL |
‘Sagit’ | ‘Noam’ | ‘Yael’ | NULL |
נוצרה לנו טבלה חדשה המציגה את המקצועות כעמודות ואת שמות האנשים בשורות. ניתן לראות כי בכל אחד מהמקצועות ישנם 3 אנשים בתפקיד מלבד אופה. ולכן, בשורות שמתחת לשמה של האופה היחידה מופיע NULL
.