Skip to main content
La familia de tipos de datos que representa intervalos de fecha y hora. Los tipos resultantes del operador INTERVAL. Estructura:
  • Un intervalo de tiempo como valor entero sin signo.
  • El tipo de un intervalo.
Tipos de intervalo admitidos:
  • NANOSECOND
  • MICROSECOND
  • MILLISECOND
  • SECOND
  • MINUTE
  • HOUR
  • DAY
  • WEEK
  • MONTH
  • QUARTER
  • YEAR
Para cada tipo de intervalo, existe un tipo de dato independiente. Por ejemplo, el intervalo DAY corresponde al tipo de dato IntervalDay:

Observaciones sobre el uso

Puede usar valores de tipo Interval en operaciones aritméticas con valores de tipo Date y DateTime. Por ejemplo, puede sumar 4 días a la hora actual:
También es posible usar múltiples intervalos a la vez:
Y para comparar valores con intervalos diferentes:

Agregación

sum, avg, min, max y any aplicadas a una columna Interval devuelven un intervalo del mismo tipo. sum suma el número de unidades, mientras que avg calcula su promedio y redondea el resultado a un número entero de unidades:
Los valores de distintas unidades se convierten a su unidad común antes de agregarse, por lo que sumar un minuto y un segundo da 61 segundos. Month, Quarter y Year no comparten ninguna unidad común con las unidades más pequeñas (un mes no tiene un número fijo de días), por lo que no pueden combinarse con ellas de ninguna manera.

Intervalos de tipo mixto

Los intervalos de tipo mixto, por ejemplo, varias horas y varios minutos, se pueden crear con la sintaxis INTERVAL 'value' <from_kind> TO <to_kind>. El resultado es una tupla de dos o más intervalos. Combinaciones admitidas: Los campos distintos del primero se validan según el estándar SQL: MONTH 0-11, HOUR 0-23, MINUTE 0-59, SECOND 0-59.
Un signo inicial opcional + o - se aplica a todos los componentes:

Véase también

  • INTERVAL, operador
  • toInterval, funciones de conversión de tipos
  • avg, función de agregación
  • sum, función de agregación
Última modificación el 26 de septiembre de 2026