עבודה עם תאריכים חלק 3
חלק מהיחידה יסודות במסלול ה-SQL של Coddy. שיעור 33 מתוך 72.
SQL מספקת כמה פונקציות שימושיות לעיבוד תאריכים ולעיצובם. הנה כמה פונקציות תאריך נפוצות:
DATE()- ממירה מחרוזת לתאריךSTRFTIME()- מעצבת תאריכים בהתאם לפרמטרים שצוינוDATE('now')- מקבלת את התאריך הנוכחי:
לדוגמה, המרה של מחרוזת לתאריך:
SELECT DATE('2023-05-15 13:45:00')
-- מחזיר: 2023-05-15
SELECT DATE('now')
-- מחזיר את התאריך הנוכחילדוגמה, חילוץ השנה, החודש והיום מתוך תאריך:
-- קבל את השנה
SELECT STRFTIME('%Y', '2023-05-15')
-- מחזיר: 2023
-- קבל את החודש
SELECT STRFTIME('%m', '2023-05-15')
-- מחזיר: 05
-- קבל את היום
SELECT STRFTIME('%d', '2023-05-15')
-- מחזיר: 15
-- הצג שילוב של שנה ויום (אפשר להשתמש בכל תו מפריד)
SELECT STRFTIME('%Y:%d', '2023-05-15')
-- מחזיר: 2023:15
-- השתמש במקף כמפריד במקום זאת
SELECT STRFTIME('%d-%m-%Y', '2023-05-15')
-- מחזיר: 15-05-2023
-- קבל את היום בשבוע
SELECT STRFTIME('%w', '2023-05-15')
-- מחזיר: 1 (יום שני; יום ראשון הוא 0)מצייני פורמט נפוצים:
- %Y: שנה (4 ספרות)
- %m: חודש (01-12)
- %d: יום בחודש (01-31)
- %w: יום בשבוע (0-6, יום ראשון הוא 0)
- %H: שעה (00-23)
- %M: דקה (00-59)
- %S: שנייה (00-59)
אפשר להשתמש בכל תו מפריד בין המציינים (למשל -, :, /). לדוגמה, STRFTIME('%d-%m-%Y', date) וגם STRFTIME('%d:%m:%Y', date) משלבים יום, חודש ושנה, רק עם תווים מפרידים שונים.
אפשר לשלב את הפונקציות האלה בשאילתות:
-- מצא את כל הרשומות מהשנה הנוכחית
SELECT * FROM table1
WHERE STRFTIME('%Y', date_column) = STRFTIME('%Y', 'now')אתגר
קלטבלאות ועמודות זמינות:
events:id,start,end
כתבו שאילתה שמציגה:
- את מזהה האירוע
- את תאריך ההתחלה בפורמט "DD-MM-YYYY". קראו לעמודה זו
formatted_start - את תאריך הסיום בפורמט "DD-MM-YYYY". קראו לעמודה זו
formatted_end - את משך הזמן בימים בין ההתחלה לסיום, מעוגל למספר השלם הקרוב ביותר. קראו לעמודה זו
duration_days
סננו רק את השורות שבהן השנה של העמודה start היא 2009 (STRFTIME() מחזירה מחרוזת ולא מספר).
מיינו את התוצאות לפי משך הזמן בימים בסדר יורד.
תזכורת: כדי לחשב את ההפרש בין תאריכים השתמשו ב-JULIANDAY(end) - JULIANDAY(start) והשתמשו ב-ROUND() כדי לעגל למספרים שלמים.
נסו בעצמכם
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
2תנאים
יסודות התנאיםמילת המפתח ANDמילת המפתח ORמילת המפתח NOTשילוב של תנאים מרוביםסוגרייםערכים בוליאניים3פורמט החזרה ספציפי
ערכי Nullמיון תוצאות – חלק 1מיון תוצאות – חלק 2סיכום – חברת אבטחת סייברהגבלת מספר הרשומותסיכום – מפעל כלי רכב6אתגרי מבוא
חזרה – בחירות לפרלמנטחזרה – מעצר חשוד בידי המשטרהחזרה – כלי משקה בברחזרה – מהנדסים עמודות חדשותתרגלו בעצמכם: SQL אונליין