
Upper מציגה אותיות גדולות, Lower אותיות קטנות, ופונקציית האורך מחזירה את אורך המחרוזת. כדאי לתת כינוי לעמודה החדשה, למשל NameLength.UnitPrice הופעלו Ceiling (עיגול למעלה, 21.35 הופך ל-22), Floor (עיגול למטה, ל-21) ו-Round עם מספר ספרות אחרי הנקודה (עם 1 מתקבל 21.4).HireDate של עובדים הופעלו Year, Month ו-Day. הפונקציה DateName מקבלת קודם מה להוציא מהתאריך: m לשם החודש ו-dw לשם יום בשבוע.DateDiff עם year, תאריך הלידה ותאריך ההעסקה נותנת את הגיל בקבלה לעבודה (ננסי 44, אנדרו 40). אם מחליפים את התאריך השני ב-GetDate(), מקבלים את הגיל היום. אפשר לקרוא לפונקציה בתוך פונקציה.DateName, לחיצה על Ctrl+Space מציגה את הרשימה.הטקסט המלא של הדקות הראשונות בהרצאה «שימוש בפונקציות סקלריות ב-SQL» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
משהו מאוד מעניין ששווה לראות זה סדרה של פונקציות שקיימות בילד אין בתוך מסד הנתונים. חלק מהפונקציות האלה נקראות פונקציות סקלריות.
בואו נבין רגע מה זה אומר. אם אני עכשיו מבצע Select Product Name From Products, נריץ, נקבל עמודה אחת של שמות המוצרים.
מה קורה אם אני רוצה להציג את המוצרים, בואו נניח אותיות גדולות. כל מוצר רק באותיות גדולות. יש לנו כל מיני פונקציות שמתעסקות עם הכרזות.
פונקציה להצגת אותיות גדולות upper. קיצור של upper case, אני פשוט עוטף את העמודה, מריץ, והוא עושה עליה איזשהו change ומחזיר לי אותיות גדולות.
למה היא נקראת פונקציה סקלארית? קודם כל המילה סקלאר וערך בודד, סינגל ואליו. ובאמת מה שקורה זה שהפונקציה מקבלת עמודה ופועלת בצורה נפרדת ובודדת על כל אחד מהערכים שלה.
קיבלה אליס מיוטון היא מחזירה את האליס מיוטון באותיות גדולות בנפרד לערך הבא. מקבלת את הערך הבא מחזירה עבורו את הערך באותיות גדולות.
בואו נבצע את אותו הדבר אבל הפעם על לואוור נריץ והנה יש לנו אותיות קטנות. בואו ננסה עוד אחת ששייכת לעולם המחרוזות ונקרא לה lan.
קיצור של lanth הוא יביא לי את אורך המחרוז. אולי אנחנו רוצים להתעסק עם זה באיזושהי שאילתא. הפונקציות האלה זה פונקציות לטיפול במחרוזות ויש עוד פונקציות כאלה.
אנחנו רוצים לראות פונקציות בתחום אחר. בואו נבצע פונקציות שקשורות למספרים, פונקציות מתמטיות. נגדיר Select Unit Price From Products. זה מביא לי את עמודת ה-Unit Price.
דרך אגב, אם אני חוזר בחזרה, אין שם לעמודה, כדאי להוסיף כינוי בהקשר הזה. דוגמא פרייס בואו נוסיף את זה פה ופה ופה ואז אנחנו יכולים האמת שזה פרייס וזה פרייס אבל זה לא באמת היה פרייס זה היה קודם כל זה בכלל לא פרייס זה name name וזה name length אפשר לעשות את זה ככה name length אורך השם קצת יותר יפה אז אם אני מסתכל על זה
אני רואה שזה המחיר יש לנו מחירים שהם בדיוק מספר שלם ויש כאלה שהם מספר עשרוני. אז יש שם כל מיני פונקציות שמתעסקות במספרים, פונקציות מתמטיות.
לדוגמה, עיגול כלפי מעלה יהיה סילינג. הנה הוא פה, תקרה. בוא תעגל לי לתקרה את אותו מספר. והנה אנחנו רואים את ה... מה זה היה שם?
20 ו... בואו רגע נסתכל מה זה היה שם, אני כבר שכחתי. זה היה 21.35 ופה אנחנו רואים אותו כ-22. לעגל כלפי מעלה. בואו ניתן לזה איזשהו כינוי as price go יופי.
אז יש לנו אפשרות גם לעגל כלפי מטה. זה יהיה floor. בואו נראה והנה זה ירד ל-21. יש לנו אפשרות לעגל את זה למספר הקרוב. זה יהיה round.
הוא אומר לי תשמע תן לי כמה ספרות אחרי הנקודה אתה רוצה שאני אעגל אותו. בואו ניתן לו 1. 21.4 כאשר לפני זה הוא היה 21.35. אגיע אותו לספרה אחת אחרי הנקודה העשורנית.
אלה פונקציות שמתעסקות בנתונים מתמטיים ואני לא צריך. דרך אגב, יש לנו כאן את כלל הפונקציות, זה בעצם ניתן על ידי view, הנה Object Explorer, F8, נחזור לכאן ואם אנחנו ניכנס במקום tables ל-programmability, יש לנו כאן פונקצ'יונס, יש לנו כאן סיסטם פונקצ'יונס וקטגוריות של פונקציות מערכת.
הנה פונקציות שמתעסקות עם הכרזות, מה שראינו. יש לנו פה הרבה פונקציות, הנה upper לדוגמה, הנה length, הנה פונקציות מתמטיות שראינו.
תראו כמה פונקציות יש, יש פה את ה-sealing, יש פה את ה-floor. קבוצה נוספת של פונקציות זה פונקציות שמתעסקות עם תאריכים וזמנים, הקבוצה הזאת.
בואו נראה מה אנחנו יכולים לעשות איתן. Select hire date from employees. זה נותן לנו את התאריך ההעסקה של כל עובד. אז אנחנו רוצים להציג בעצם את ה... בוא נניח את ה-first name של העובד, את ה-last name של העובד, ואני רוצה גם את התאריך ההעסקה שלו.
ובסדר, אבל זה לא כזה פורמט יפה לי. אולי אני רוצה להציג את זה בפורמט קצת אחר, אולי אני רוצה רק את השנה. יש לנו year hire date, והוא מציג לי רק את השנה, בואו ניתן לזה איזשהו כינוי.
אז hire, מגדיר את זה הפעם עם כזה אמת, hire year. שנת ההעסקה של אותו עובד. וכמו שיש לנו year, יכול להיות לנו גם month.
hire month. בואו נריץ, מעולה. ויכול להיות לנו כמובן גם day. בואו נריץ. אנחנו יכולים לקחת פונקציה של date name.
בואו ניקח את הקוד הזה, נשים אותו פה ונגיד לו דייט מיין דייט מיין מקבלת תאריך אבל לפני זה מה אנחנו רוצים להוציא מהתאריך לדוגמה m יש לנו כאן אם אני לוחץ על קונטרול ספייס הוא נותן לי כל מיני קודים כאלה m זה חודש יש לנו כאן את ה-hire month אבל הפעם הוא ייתן לנו את השם של ה-month בואו נראה מה קורה אם אני אומר לו d זה יהיה
hire day בואו נריץ את זה, לא ממש, אולי ניתן לו day