DateTimeDiff (consulta NoSQL)
SE APLICA A: NoSQL
Devuelve la diferencia, como un entero con signo, de la parte de fecha y hora especificadas entre dos valores de fecha y hora.
Sintaxis
DateTimeDiff(<date_time_part>, <start_date_time>, <end_date_time>)
Argumentos
Descripción | |
---|---|
date_time_part |
Cadena que representa una parte de una especificación de formato de fecha ISO 8601. Esta parte se usa para indicar qué aspecto de la fecha se va a comparar. |
start_date_time |
Cadena de fecha y hora UTC (hora universal coordinada) en el formato ISO 8601 YYYY-MM-DDThh:mm:ss.fffffffZ . |
end_date_time |
Cadena de fecha y hora UTC (hora universal coordinada) en el formato ISO 8601 YYYY-MM-DDThh:mm:ss.fffffffZ . |
Nota
Para más información sobre el formato ISO 8601, consulte ISO_8601.
Tipos de valores devueltos
Devuelve un valor numérico que es un entero con signo.
Ejemplos
Los ejemplos siguientes comparan el 4 de febrero de 2019 16:00 UTC y el 5 de marzo de 2018 05:00 UTC con varias partes de fecha y hora.
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
}
]
Comentarios
- Esta función devuelve
undefined
por estas razones:- La parte de fecha y hora especificadas no es válida.
- La fecha y hora del argumento start o end no es una cadena de fecha y hora ISO 8601 válida.
- El formato de fecha ISO 8601 especifica partes de fecha y hora válidas que se usarán con esta función: | | Formato | | --- | --- | | Día |
day
,dd
,d
| | Hora |hour
,hh
| | Minuto |minute
,mi
,n
| | Segundo |second
,ss
,s
| | Milisegundo |millisecond
,ms
| | Microsegundo |microsecond
,mcs
| | Nanosegundo |nanosecond
,ns
| - La función siempre devuelve un valor entero con signo. La función devuelve una medida del número de límites cruzados para la parte de fecha y hora especificada, no una medida del intervalo de tiempo.
Contenido relacionado
- System functions (Funciones del sistema)
DateTimeBin