DateTimeDiff (query NoSQL)
SI APPLICA A: NoSQL
Restituisce la differenza, come intero con segno, della parte di data e ora specificata tra due valori di data e ora.
Sintassi
DateTimeDiff(<date_time_part>, <start_date_time>, <end_date_time>)
Argomenti
Descrizione | |
---|---|
date_time_part |
Stringa che rappresenta una parte di una specifica del formato di data ISO 8601. Questa parte viene utilizzata per indicare quale aspetto della data confrontare. |
start_date_time |
Stringa di data e ora UTC (Coordinated Universal Time) nel formato YYYY-MM-DDThh:mm:ss.fffffffZ ISO 8601 . |
end_date_time |
Stringa di data e ora UTC (Coordinated Universal Time) nel formato YYYY-MM-DDThh:mm:ss.fffffffZ ISO 8601 . |
Nota
Per altre informazioni sul formato ISO 8601, vedere ISO 8601.
Tipi restituiti
Restituisce un valore numerico che è un intero con segno.
Esempi
Gli esempi seguenti confrontano il 4 febbraio 2019 16:00 UTC e il 5 marzo 2018 05:00 UTC usando varie parti di data e ora.
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
}
]
Osservazioni:
- Questa funzione restituisce
undefined
per questi motivi:- La parte di data e ora specificata non è valida.
- La data e l'ora nell'argomento start o end non sono una stringa di data e ora ISO 8601 valida.
- Il formato di data ISO 8601 specifica parti di data e ora valide da utilizzare con questa funzione: | | Formato | | | --- | --- | | Giorno |
day
,dd
,d
| | Hour |hour
,hh
| | Minute |minute
,mi
, ,n
| | Secondo |second
,ss
,s
| | Millisecondo |millisecond
,ms
| | Microsecondo |microsecond
,mcs
| | Nanosecondo |nanosecond
,ns
| - La funzione restituisce sempre un valore intero con segno. La funzione restituisce una misura del numero di limiti superati per la parte di data e ora specificata, non una misura dell'intervallo di tempo.