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 מתחילים ביום שני.
    • MONTH
    • QUARTER
    • YEAR
    • 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

הערות

הפונקציה הזו לא זמינה לסוגי תאריכים במצב תאימות.