DateTimeDiff (NoSQL-Abfrage)

GILT FÜR: NoSQL

Gibt den Unterschied des angegebenen Datums- und Uhrzeitteils zwischen zwei Datums- und Uhrzeitwerten als ganze Zahl mit Vorzeichen zurück.

Syntax

DateTimeDiff(<date_time_part>, <start_date_time>, <end_date_time>)

Argumente

BESCHREIBUNG
date_time_part Eine Zeichenfolge, die einen Teil einer Datumsformatspezifikation im ISO 8601-Format darstellt. Mit diesem Teil wird angegeben, welcher Aspekt des Datums verglichen werden soll.
start_date_time Eine Datums- und Uhrzeitzeichenfolge in UTC (Coordinated Universal Time, koordinierte Weltzeit) im ISO 8601-Format YYYY-MM-DDThh:mm:ss.fffffffZ.
end_date_time Eine Datums- und Uhrzeitzeichenfolge in UTC (Coordinated Universal Time, koordinierte Weltzeit) im ISO 8601-Format YYYY-MM-DDThh:mm:ss.fffffffZ.

Hinweis

Weitere Informationen zum ISO 8601-Format finden Sie unter ISO 8601.

Rückgabetypen

Gibt einen numerischen Wert zurück, der eine ganze Zahl mit Vorzeichen ist.

Beispiele

In den folgenden Beispielen werden die Angabe 4. Februar 2019 16:00 UTC und die Angabe 5. März 2018 05:00 UTC anhand verschiedener Datums- und Uhrzeitteile verglichen.

SELECT VALUE {
    diffPastYears: DateTimeDiff("yyyy", "2019-02-04T16:00:00.0000000", "2018-03-05T05:00:00.0000000"),
    diffPastMonths: DateTimeDiff("mm", "2019-02-04T16:00:00.0000000", "2018-03-05T05:00:00.0000000"),
    diffPastDays: DateTimeDiff("dd", "2019-02-04T16:00:00.0000000", "2018-03-05T05:00:00.0000000"),
    diffPastHours: DateTimeDiff("hh", "2019-02-04T16:00:00.0000000", "2018-03-05T05:00:00.0000000"),
    diffPastSeconds: DateTimeDiff("ss", "2019-02-04T16:00:00.0000000", "2018-03-05T05:00:00.0000000"),
    diffFutureYears: DateTimeDiff("yyyy", "2018-03-05T05:00:00.0000000", "2019-02-04T16:00:00.0000000"),
    diffFutureMonths: DateTimeDiff("mm", "2018-03-05T05:00:00.0000000", "2019-02-04T16:00:00.0000000"),
    diffFutureDays: DateTimeDiff("dd", "2018-03-05T05:00:00.0000000", "2019-02-04T16:00:00.0000000"),
    diffFutureHours: DateTimeDiff("hh", "2018-03-05T05:00:00.0000000", "2019-02-04T16:00:00.0000000"),
    diffFutureSeconds: DateTimeDiff("ss", "2018-03-05T05:00:00.0000000", "2019-02-04T16:00:00.0000000")
}
[
  {
    "diffPastYears": -1,
    "diffPastMonths": -11,
    "diffPastDays": -336,
    "diffPastHours": -8075,
    "diffPastSeconds": -29070000,
    "diffFutureYears": 1,
    "diffFutureMonths": 11,
    "diffFutureDays": 336,
    "diffFutureHours": 8075,
    "diffFutureSeconds": 29070000
  }
]

Hinweise

  • Diese Funktion gibt aus folgenden Gründen zurück undefined :
    • Der angegebene Teil von Datum und Uhrzeit ist ungültig.
    • Das Datum und die Uhrzeit im Argument für Start oder Ende sind keine gültige Datums- und Uhrzeitzeichenfolgen im ISO 8601-Format.
  • Das ISO 8601-Datumsformat gibt gültige Datums- und Uhrzeitteile an, die mit dieser Funktion verwendet werden sollen: | | Format | | --- | --- | | Tag | day, dd, d | | Stunde | hour, hh | | Minute | minute, mi, n | | Sekunde | second, ss, s | | Millisekunde | millisecond, ms | | Mikrosekunde | microsecond, mcs | | Nanosekunde | nanosecond, ns |
  • Die Funktion gibt immer eine ganze Zahl mit Vorzeichen zurück. Die Funktion gibt eine Messung der Anzahl der für den angegebenen Datums- und Uhrzeitteil überschrittenen Grenzen zurück, keine Messung des Zeitintervalls.