DATETIME_DIFF

Devuelve el número de unidades entre dos fechas

Ejemplo de uso

DATETIME_DIFF(Order Date, Ship Date, DAY)

Sintaxis

DATETIME_DIFF(date_expression, date_expression, part)

Parámetros

date_expression: campo o expresión de fecha, o de fecha y hora. Si la primera expresión de fecha es anterior a la segunda, el resultado es cero o un número negativo. DATETIME_DIFF devuelve un error si el cálculo desborda el tipo de resultado; por ejemplo, si la diferencia en microsegundos entre los dos valores de fecha desborda el valor entero.

part: la parte temporal que se debe devolver. DATETIME_DIFF admite las siguientes partes:

  • MICROSECOND: puede utilizarse en campos o expresiones de fecha y hora.
  • MILLISECOND: puede utilizarse en campos o expresiones de fecha y hora.
  • SECOND: puede utilizarse en campos o expresiones de fecha y hora.
  • MINUTE: puede utilizarse en campos o expresiones de fecha y hora.
  • HOUR: puede utilizarse en campos o expresiones de fecha y hora.
  • DAY
  • WEEK: esta parte de la fecha empieza en domingo.
  • ISOWEEK: usa el sistema de numeración semanal ISO 8601. Las semanas ISO comienzan en lunes.
  • MONTH
  • QUARTER
  • YEAR
  • ISOYEAR: utiliza el estándar de numeración anual ISO 8601 por fecha semanal. Según este estándar, el año empieza el lunes de la primera semana que contiene el primer jueves del mismo año según el calendario gregoriano.

Tipo de datos devueltos

Número (entero)

Ejemplos

En los ejemplos segundo y tercero se muestra el resultado de DATETIME_DIFF a partir de dos valores de fecha entre los cuales hay una diferencia de 24 horas. DATETIME_DIFF con la parte WEEK devuelve 1 porque DATETIME_DIFF cuenta el número de partes comprendidas en este intervalo de valores de fecha. Cada semana WEEK empieza en domingo, por lo que cada una de estas unidades comprende el sábado, 2017-10-14 00:00:00, y el domingo, 2017-10-15 00:00:00.

Fórmula Resultado
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

 

En el siguiente ejemplo se muestra el resultado de DATETIME_DIFF a partir de dos fechas en años diferentes. DATETIME_DIFF con la parte de fecha YEAR devuelve 3 porque cuenta el número de unidades anuales del calendario gregoriano comprendidas entre los dos valores de fecha. DATETIME_DIFF con la parte de fecha ISOYEAR devuelve 2 porque el segundo valor de fecha corresponde al año ISO 2015. El primer jueves del año natural del año 2015 fue 2015-01-01, por lo que el año ISO 2015 empieza el lunes anterior, 2014-12-29.

Fórmula Resultado
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

 

En el siguiente ejemplo se muestra el resultado de DATETIME_DIFF a partir de dos días consecutivos. La primera fecha corresponde a un lunes, y la segunda, a un domingo. DATETIME_DIFF con la parte de fecha ISOWEEK también devuelve 1 porque las semanas ISO comienzan en lunes.

Fórmula Resultado
DATETIME_DIFF(DATE '2017-12-18', DATE '2017-12-17', WEEK)
0
DATETIME_DIFF(DATE '2017-12-18', DATE'2017-12-17', ISOWEEK)
1

Notas

Esta función no está disponible para los tipos de fecha del modo de compatibilidad.

Recursos relacionados

¿Te ha resultado útil esta información?
¿Cómo podemos mejorar esta página?
Búsqueda
Borrar búsqueda
Cerrar búsqueda
Aplicaciones de Google
Menú principal
Buscar en el Centro de ayuda
true
102097
false