DATETIME_DIFF

Gibt die Anzahl der Teilgrenzen zwischen zwei Datumsangaben zurück.

Verwendungsbeispiel

DATETIME_DIFF(Order Date, Ship Date, DAY)

Syntax

DATETIME_DIFF( date_expression, date_expression, part )

Parameter

  • date_expression – ein Feld oder Ausdruck vom Typ „Datum“ oder „Datum und Uhrzeit“. Wenn der erste Datumsausdruck vor dem zweiten liegt, ist das Ergebnis null oder negativ.
  • part - Der zurückzugebende Teil der Zeit. DATETIME_DIFF unterstützt die folgenden Teile:
    • MICROSECOND: Verfügbar für Felder und Ausdrücke vom Typ „Datum und Uhrzeit“.
    • MILLISECOND: Verfügbar für Felder und Ausdrücke vom Typ „Datum und Uhrzeit“.
    • SECOND: Verfügbar für Felder und Ausdrücke vom Typ „Datum und Uhrzeit“.
    • MINUTE: Verfügbar für Felder und Ausdrücke vom Typ „Datum und Uhrzeit“.
    • HOUR: Verfügbar für Felder und Ausdrücke vom Typ „Datum und Uhrzeit“.
    • DAY
    • WEEK: Dieser Datumsteil beginnt mit Sonntag.
    • ISOWEEK: Verwendet ISO 8601-Wochengrenzen. ISO-Wochen beginnen mit Montag.
    • MONTH
    • QUARTER
    • YEAR
    • ISOYEAR: Verwendet die ISO 8601-Jahresgrenze für die Wochennummerierung. Die ISO-Jahresgrenze ist der Montag der ersten Woche, deren Donnerstag zum entsprechenden gregorianischen Kalenderjahr gehört.

Rückgabedatentyp

Zahl (ganze Zahl)

Beispiele

Im zweiten und dritten Beispiel in der folgenden Tabelle sehen Sie das Ergebnis von DATETIME_DIFF für zwei Datumswerte, die 24 Stunden auseinanderliegen. DATETIME_DIFF mit dem Teil WEEK gibt 1 zurück, da DATETIME_DIFF die Anzahl der Teilgrenzen in diesem Bereich von Datumswerten zählt. Jede WEEK beginnt am Sonntag. Zwischen Samstag, 14.10.2017 00:00:00 und Sonntag, 15.10.2017 00:00:00 liegt also eine Teilgrenze.

Beispielformel Ausgabe
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

Im folgenden Beispiel sehen Sie das Ergebnis von DATETIME_DIFF für zwei Datumsangaben in verschiedenen Jahren. DATETIME_DIFF mit dem Datumsteil YEAR gibt 3 zurück, da die Anzahl der gregorianischen Kalenderjahresgrenzen zwischen den beiden Datumswerten gezählt wird. DATETIME_DIFF mit dem Datumsteil ISOYEAR gibt 2 zurück, da der zweite Datumswert zum ISO-Jahr 2015 gehört. Der erste Donnerstag des Kalenderjahres 2015 war der 01.01.2015. Das ISO-Jahr 2015 beginnt also am vorherigen Montag, dem 29.12.2014.

Beispielformel Ausgabe
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

Im folgenden Beispiel sehen Sie das Ergebnis von DATETIME_DIFF für zwei aufeinanderfolgende Tage. Der erste Tag ist ein Montag, der zweite ein Sonntag. DATETIME_DIFF mit dem Datumsteil ISOWEEK gibt ebenfalls 1 zurück, da ISO-Wochen am Montag beginnen.

Beispielformel Ausgabe
DATETIME_DIFF(DATE '2017-12-18', DATE '2017-12-17', WEEK) 0
DATETIME_DIFF(DATE '2017-12-18', DATE'2017-12-17', ISOWEEK) 1

Hinweise

Diese Funktion ist für Typen von Kompatibilitätsmodus-Daten nicht verfügbar.