DATETIME_DIFF
הפונקציה מחזירה את מספר הגבולות של חלקי היום בין שני תאריכים.
דוגמאות לשימוש
DATETIME_DIFF(Order Date, Ship Date, DAY)
תחביר
DATETIME_DIFF( date_expression, date_expression, part )
פרמטרים
-
date_expression– שדה או ביטוי של תאריך או של תאריך ושעה. אם הביטוי הראשון של התאריך מופיע לפני הביטוי השני של התאריך, התוצאה היא אפס או שלילית. -
part– החלק של השעה שרוצים להחזיר. DATETIME_DIFFתומך בחלקים הבאים:-
MICROSECOND: זמין לשדות או לביטויים של תאריך ושעה. -
MILLISECOND: זמין לשדות או לביטויים של תאריך ושעה. -
SECOND: זמין לשדות או לביטויים של תאריך ושעה. -
MINUTE: זמין לשדות או לביטויים של תאריך ושעה. -
HOUR: זמין לשדות או לביטויים של תאריך ושעה. DAY-
WEEK: החלק הזה של התאריך מתחיל ביום ראשון. -
ISOWEEK: משתמש בגבולות של שבוע ISO 8601. השבועות לפי תקן ISO מתחילים ביום שני. MONTHQUARTERYEAR-
ISOYEAR: משתמש בגבולות של שנת מספור השבועות לפי ISO 8601. הגבול של שנת ISO הוא יום שני של השבוע הראשון שבו יום חמישי שייך לשנה המתאימה בלוח השנה הגרגוריאני.
-
סוג הנתונים שמוחזר
מספר (מספר שלם)
דוגמאות
בדוגמה השנייה והשלישית בטבלה הבאה מוצגת התוצאה של DATETIME_DIFF עבור שני ערכי תאריכים שההפרש ביניהם הוא 24 שעות. הפונקציה DATETIME_DIFF עם החלק WEEK מחזירה 1 כי DATETIME_DIFF סופרת את מספר הגבולות של החלק בטווח הזה של ערכי התאריכים. כל WEEK מתחיל ביום ראשון, ולכן יש גבול בין החלקים ביום שבת, 2017-10-14 00:00:00 לבין יום ראשון, 2017-10-15 00:00:00.
| נוסחה לדוגמה | תשובה |
|---|---|
DATETIME_DIFF( DATETIME "2010-07-07 10:20:00", DATETIME "2008-12-25 15:30:00", DAY ) |
559 |
DATETIME_DIFF( DATETIME "2017-10-15 00:00:00", DATETIME "2017-10-14 00:00:00", DAY ) |
1 |
DATETIME_DIFF( DATETIME "2017-10-15 00:00:00", DATETIME "2017-10-14 00:00:00", WEEK ) |
1 |
בדוגמה הבאה מוצגת התוצאה של DATETIME_DIFF עבור שני תאריכים בשנים שונות. הפונקציה DATETIME_DIFF עם החלק של התאריך YEAR מחזירה 3 כי היא סופרת את מספר הגבולות של השנה בלוח השנה הגרגוריאני בין שני ערכי התאריך. DATETIME_DIFF עם חלק התאריך ISOYEAR מחזירה 2 כי ערך התאריך השני שייך לשנת ISO 2015. יום חמישי הראשון בשנת 2015 היה 2015-01-01, ולכן שנת ISO 2015 מתחילה ביום שני הקודם, 2014-12-29.
| נוסחה לדוגמה | תשובה |
|---|---|
DATETIME_DIFF(DATETIME '2017-12-30 00:00:00', DATETIME '2014-12-30 00:00:00', YEAR) |
3 |
DATETIME_DIFF(DATETIME '2017-12-30 00:00:00', DATETIME '2014-12-30 00:00:00', ISOYEAR) |
2 |
בדוגמה הבאה מוצגת התוצאה של DATETIME_DIFF במשך יומיים רצופים. התאריך הראשון חל ביום שני והתאריך השני חל ביום ראשון. DATETIME_DIFF עם חלק התאריך ISOWEEK מחזירה גם היא 1 כי שבועות ISO מתחילים ביום שני.
| נוסחה לדוגמה | תשובה |
|---|---|
| DATETIME_DIFF(DATE '2017-12-18', DATE '2017-12-17', WEEK) | 0 |
DATETIME_DIFF(DATE '2017-12-18', DATE'2017-12-17', ISOWEEK) |
1 |
הערות
הפונקציה הזו לא זמינה לסוגי תאריכים במצב תאימות.