Europe/Amsterdam. En este caso, se usa la zona horaria especificada en lugar de la local (predeterminada).
Ejemplo
Para garantizar la compatibilidad con el estándar SQL, las siguientes funciones,
NOW, CURRENT_TIMESTAMP, LOCALTIME, LOCALTIMESTAMP, TODAY y CURRENT_DATE, se pueden usar sin paréntesis.UTCTimestamp
Introducido en: v22.11.0 Devuelve la fecha y hora actuales en el momento del análisis de la consulta. La función es una expresión constante. Esta función da el mismo resultado quenow('UTC'). Se añadió únicamente por compatibilidad con MySQL. Se recomienda usar now.
Esta función no es determinista: puede devolver resultados diferentes para los mismos argumentos.
UTC_timestamp
Argumentos
- Ninguno.
DateTime
Ejemplos
Obtener la marca de tiempo UTC actual
Query
Response
YYYYMMDDToDate
Introducido en: v23.9.0 Convierte un número que contiene el año, el mes y el día en unDate.
Esta función es la opuesta de la función toYYYYMMDD().
El resultado no está definido si la entrada no codifica un valor Date válido.
Sintaxis
Date a partir de los argumentos proporcionados Date
Ejemplos
Ejemplo
Query
Response
YYYYMMDDToDate32
Introducido en: v23.9.0 Convierte un número que contiene el año, el mes y el día en unDate32.
Esta función es la opuesta de la función toYYYYMMDD().
La salida no está definida si la entrada no codifica un valor Date32 válido.
Sintaxis
Date32 a partir de los argumentos proporcionados Date32
Ejemplos
Ejemplo
Query
Response
YYYYMMDDhhmmssToDateTime
Introducido en: v23.9.0 Convierte un número que contiene el año, el mes, el día, la hora, el minuto y el segundo en unDateTime.
Esta función es la opuesta de la función toYYYYMMDDhhmmss().
La salida no está definida si la entrada no codifica un valor DateTime válido.
Sintaxis
YYYYMMDDhhmmss— Número que contiene el año, mes, día, hora, minuto y segundo.(U)Int*oFloat*oDecimaltimezone— Nombre de la zona horaria.String
DateTime a partir de los argumentos indicados DateTime
Ejemplos
Ejemplo
Query
Response
YYYYMMDDhhmmssToDateTime64
Introducido en: v23.9.0 Convierte un número que contiene el año, mes, día, hora, minuto y segundo en unDateTime64.
Esta función es lo contrario de la función toYYYYMMDDhhmmss().
La salida no está definida si la entrada no codifica un valor DateTime64 válido.
Sintaxis
YYYYMMDDhhmmss— Número que contiene el año, el mes, el día, la hora, el minuto y el segundo.(U)Int*oFloat*oDecimalprecision— Precisión de la parte fraccionaria (0-9).UInt8timezone— Nombre de la zona horaria.String
DateTime64 a partir de los argumentos proporcionados DateTime64
Ejemplos
Ejemplo
Query
Response
addDate
Introducido en: v23.9.0 Añade el intervalo de tiempo a la fecha, fecha con hora, o fecha o fecha con hora codificada como cadena proporcionada. Si la suma da como resultado un valor fuera de los límites del tipo de dato, el resultado es indefinido. Sintaxisdatetime— La fecha o fecha con hora a la que se sumainterval.DateorDate32orDateTimeorDateTime64orStringinterval— Intervalo que se va a sumar.Interval
interval a datetime. Date or Date32 or DateTime or DateTime64
Ejemplos
Añadir un intervalo a una fecha
Query
Response
addDays
Introducido en: v1.1.0 Añade un número determinado de días a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se debe sumar el número especificado de días.DateoDate32oDateTimeoDateTime64oStringnum— Número de días que se deben sumar.(U)Int*oFloat*
datetime más num días. Date o Date32 o DateTime o DateTime64
Ejemplos
Añadir días a distintos tipos de fecha
Query
Response
Query
Response
addHours
Introducido en: v1.1.0 Añade un número determinado de horas a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se añadirá el número especificado de horas.DateoDate32oDateTimeoDateTime64oStringnum— Número de horas que se añadirán.(U)Int*oFloat*
datetime más num horas DateTime o DateTime64(3)
Ejemplos
Añadir horas a distintos tipos de fecha
Query
Response
Query
Response
addInterval
Introducido en: v22.11.0 Suma un intervalo a otro intervalo o a una tupla de intervalos.Los intervalos del mismo tipo se combinarán en un solo intervalo. Por ejemplo, si se pasan
toIntervalDay(1) y toIntervalDay(2), el resultado será (3) en lugar de (1,1).interval_1— Primer intervalo o tupla de intervalos.IntervaloTuple(Interval)interval_2— Segundo intervalo que se suma.Interval
Tuple(Interval)
Ejemplos
Sumar intervalos
Query
Response
addMicroseconds
Introducido en: v22.6.0 Añade un número especificado de microsegundos a una fecha y hora o a una fecha y hora codificada como cadena. Sintaxisdatetime— Fecha con hora a la que se añadirá el número especificado de microsegundos.DateTimeoDateTime64oStringnum— Número de microsegundos que se añadirán.(U)Int*oFloat*
date_time más num microsegundos DateTime64
Ejemplos
Añadir microsegundos a distintos tipos de fecha y hora
Query
Response
Query
Response
addMilliseconds
Introducido en: v22.6.0 Añade una cantidad especificada de milisegundos a una fecha con hora o a una fecha con hora codificada como cadena. Sintaxisdatetime— Fecha con hora a la que se añadirá el número especificado de milisegundos.DateTimeoDateTime64oStringnum— Número de milisegundos que se añadirán.(U)Int*oFloat*
datetime con num milisegundos añadidos DateTime64
Ejemplos
Añadir milisegundos a distintos tipos de fecha y hora
Query
Response
Query
Response
addMinutes
Introducido en: v1.1.0 Añade un número determinado de minutos a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se añadirá el número especificado de minutos.DateoDate32oDateTimeoDateTime64oStringnum— Número de minutos que se añadirán.(U)Int*oFloat*
datetime más num minutos. DateTime o DateTime64(3)
Ejemplos
Añadir minutos a distintos tipos de fecha
Query
Response
Query
Response
addMonths
Introducido en: v1.1.0 Añade una cantidad determinada de meses a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se añadirá el número de meses especificado.DateoDate32oDateTimeoDateTime64oStringnum— Número de meses que se añadirán.(U)Int*oFloat*
datetime con num meses añadidos Date o Date32 o DateTime o DateTime64
Ejemplos
Añadir meses a distintos tipos de fecha
Query
Response
Query
Response
addNanoseconds
Introducido en: v22.6.0 Añade una cantidad especificada de nanosegundos a una fecha con hora o a una fecha con hora codificada como cadena. Sintaxisdatetime— Fecha con hora a la que se sumará el número especificado de nanosegundos.DateTimeoDateTime64oStringnum— Número de nanosegundos que se sumarán.(U)Int*oFloat*
datetime más num nanosegundos DateTime64
Ejemplos
Sumar nanosegundos a distintos tipos de fecha y hora
Query
Response
Query
Response
addQuarters
Introducido en: v20.1.0 Añade un número especificado de trimestres a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se añadirá el número especificado de trimestres.DateoDate32oDateTimeoDateTime64oStringnum— Número de trimestres que se añadirán.(U)Int*oFloat*
datetime más num trimestres. Date o Date32 o DateTime o DateTime64
Ejemplos
Añadir trimestres a distintos tipos de fecha
Query
Response
Query
Response
addSeconds
Introducido en: v1.1.0 Añade un número especificado de segundos a una fecha, una fecha con hora, o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se añadirá el número especificado de segundos.DateoDate32oDateTimeoDateTime64oStringnum— Número de segundos que se van a añadir.(U)Int*oFloat*
datetime más num segundos DateTime o DateTime64(3)
Ejemplos
Añadir segundos a distintos tipos de fecha
Query
Response
Query
Response
addTupleOfIntervals
Introducido en: v22.11.0 Añade de forma consecutiva una tupla de intervalos a una fecha o a una fecha y hora. Sintaxisdatetime— Fecha o fecha con hora a la que se añaden intervalos.DateoDate32oDateTimeoDateTime64intervals— Tupla de intervalos que se añaden adatetime.Tuple(Interval)
date con intervals añadidos. Date o Date32 o DateTime o DateTime64
Ejemplos
Añadir una tupla de intervalos a una fecha
Query
Response
addWeeks
Introducido en: v1.1.0 Añade un número especificado de semanas a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se añade el número especificado de semanas.DateoDate32oDateTimeoDateTime64oStringnum— Número de semanas que se añaden.(U)Int*oFloat*
datetime más num semanas Date o Date32 o DateTime o DateTime64
Ejemplos
Añadir semanas a distintos tipos de fecha
Query
Response
Query
Response
addYears
Introducido en: v1.1.0 Añade un número determinado de años a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se añadirá el número de años especificado.DateoDate32oDateTimeoDateTime64oStringnum— Número de años que se va a añadir.(U)Int*oFloat*
datetime más num años. Date o Date32 o DateTime o DateTime64
Ejemplos
Añadir años a distintos tipos de fecha
Query
Response
Query
Response
age
Introducido en: v23.1.0 Devuelve el componente de la unidad de la diferencia entrestartdate y enddate.
La diferencia se calcula con una precisión de 1 nanosegundo.
Por ejemplo, la diferencia entre 2021-12-29 y 2022-01-01 es de 3 días para la unidad de día,
0 meses para la unidad de mes y 0 años para la unidad de año.
Para ver una alternativa a age, consulte la función dateDiff.
Sintaxis
unit— El tipo de intervalo del resultado.
startdate— El primer valor temporal que se resta (el sustraendo).DateoDate32oDateTimeoDateTime64enddate— El segundo valor temporal del que se resta (el minuendo).DateoDate32oDateTimeoDateTime64timezone— Opcional. Nombre de la zona horaria. Si se especifica, se aplica tanto a startdate como a enddate. Si no se especifica, se usan las zonas horarias de startdate y enddate. Si no coinciden, el resultado no está definido.String
Int32
Ejemplos
Calcular la edad en horas
Query
Response
Query
Response
changeDay
Introducido en: v24.7.0 Cambia el componente de día de una fecha o de una fecha y hora. Sintaxisdate_or_datetime— El valor que se debe cambiar.DateoDate32oDateTimeoDateTime64value— El valor nuevo.(U)Int*
date_or_datetime, con el componente de día modificado. Date o Date32 o DateTime o DateTime64
Ejemplos
Ejemplo de uso
Query
Response
changeHour
Introducido en: v24.7.0 Cambia el componente de hora de una fecha o fecha y hora. Sintaxisdate_or_datetime— El valor que se va a modificar.DateoDate32oDateTimeoDateTime64value— El nuevo valor.(U)Int*
date_or_datetime, con el componente de hora modificado. DateTime o DateTime64
Ejemplos
Ejemplo de uso
Query
Response
changeMinute
Introducido en: v24.7.0 Cambia el componente de minutos de unafecha o fecha y hora.
Sintaxis
date_or_datetime— El valor que se va a modificar.DateoDate32oDateTimeoDateTime64value— El nuevo valor.(U)Int*
date_or_datetime, con el componente de minutos modificado. DateTime o DateTime64
Ejemplos
Ejemplo de uso
Query
Response
changeMonth
Introducido en: v24.7.0 Modifica el componente de mes de una fecha o de una fecha y hora. Sintaxisdate_or_datetime— El valor a cambiar.DateoDate32oDateTimeoDateTime64value— El nuevo valor.(U)Int*
date_or_datetime, con el componente de mes modificado. Date o Date32 o DateTime o DateTime64
Ejemplos
Ejemplo de uso
Query
Response
changeSecond
Introducido en: v24.7.0 Cambia el componente de segundos de una fecha o de una fecha y hora. Sintaxisdate_or_datetime— El valor que se modificará.DateoDate32oDateTimeoDateTime64value— El nuevo valor.(U)Int*
date_or_datetime, con el componente de segundos modificado. DateTime o DateTime64
Ejemplos
Ejemplo de uso
Query
Response
changeYear
Introducido en: v24.7.0 Cambia el componente de año de una fecha o de una fecha y hora. Sintaxisdate_or_datetime— El valor a cambiar.DateoDate32oDateTimeoDateTime64value— El nuevo valor.(U)Int*
date_or_datetime con el componente de año modificado. Date o Date32 o DateTime o DateTime64
Ejemplos
Ejemplo de uso
Query
Response
dateDiff
Introducido en: v23.4.0 Devuelve la cantidad de límites de launit especificada que se cruzan entre startdate y enddate.
La diferencia se calcula mediante unidades relativas. Por ejemplo, la diferencia entre 2021-12-29 y 2022-01-01 es de 3 días para la unidad day
(consulte toRelativeDayNum), 1 mes para la unidad month (consulte toRelativeMonthNum) y 1 año para la unidad year
(consulte toRelativeYearNum).
Si se especifica la unidad week, dateDiff asume que las semanas comienzan en lunes.
Tenga en cuenta que este comportamiento es diferente del de la función toWeek(), en la que las semanas comienzan de forma predeterminada en domingo.
Como alternativa a dateDiff, consulte la función age.
Sintaxis
timestampDiff, TIMESTAMP_DIFF, DATE_DIFF, date_diff, timestamp_diff
Argumentos
unit— El tipo de intervalo del resultado.
startdate— El primer valor de tiempo que se resta (el sustraendo).DateoDate32oDateTimeoDateTime64enddate— El segundo valor de tiempo del que se resta (el minuendo).DateoDate32oDateTimeoDateTime64timezone— Opcional. Nombre de la zona horaria. Si se especifica, se aplica tanto astartdatecomo aenddate. Si no se especifica, se usan las zonas horarias destartdateyenddate. Si no coinciden, el resultado no está definido.String
enddate y startdate expresada en unit. Int64
Ejemplos
Calcular la diferencia entre fechas en horas
Query
Response
Query
Response
dateName
Introducido en: v21.7.0 Devuelve la parte especificada de una fecha. Valores posibles:- ‘year’
- ‘quarter’
- ‘month’
- ‘week’
- ‘dayofyear’
- ‘day’
- ‘weekday’
- ‘hour’
- ‘minute’
- ‘second’
date_part— La parte de la fecha que desea extraer.Stringdatetime— Un valor de fecha o de fecha con hora.DateoDate32oDateTimeoDateTime64timezone— Opcional. Zona horaria.String
String
Ejemplos
Extraer distintas partes de la fecha
Query
Response
dateTrunc
Introducido en: v20.8.0 Trunca un valor de fecha y hora según la parte de la fecha especificada. SintaxisDATE_TRUNC
Argumentos
unit— El tipo de intervalo al que se trunca el resultado. Valores posibles:nanosecond(solo DateTime64),microsecond(solo DateTime64),millisecond(solo DateTime64),second,minute,hour,day,week,month,quarter,year.Stringdatetime— Fecha y hora.DateoDate32oDateTimeoDateTime64timezone— Opcional. Nombre de la zona horaria del valordatetimedevuelto. Si no se especifica, la función usa la zona horaria del parámetrodatetime.String
Ejemplos
Truncar sin zona horaria
Query
Response
Query
Response
formatDateTime
Introducido en: v1.1.0 Da formato a una fecha o fecha con hora según la cadena de formato especificada.format es una expresión constante, por lo que no puede haber varios formatos para una misma columna de resultado.
formatDateTime usa el estilo de formato de fecha y hora de MySQL; consulta la documentación de MySQL.
La operación opuesta de esta función es parseDateTime.
Mediante campos de reemplazo, puedes definir un patrón para la cadena resultante.
La columna de ejemplo de la tabla siguiente muestra el resultado del formateo para 2018-01-02 22:33:44.
Campos de reemplazo:
- En versiones de ClickHouse anteriores a v23.4,
%fimprime un único cero (0) si el valor formateado es un Date, Date32 o DateTime (que no tienen fracciones de segundo) o un DateTime64 con una precisión de 0. - En versiones de ClickHouse anteriores a v25.1,
%fimprime tantos dígitos como especifique la escala de DateTime64 en lugar de 6 dígitos fijos. - En versiones de ClickHouse anteriores a v23.4,
%Mimprime el minuto (00-59) en lugar del nombre completo del mes (January-December).
DATE_FORMAT
Argumentos
datetime— Una fecha o una fecha y hora para formatear.DateoDate32oDateTimeoDateTime64format— Cadena de formato con campos de reemplazo.Stringtimezone— Opcional. Nombre de la zona horaria para la hora formateada.String
String
Ejemplos
Formatear una fecha con el marcador de posición del año
Query
Response
Query
Response
Query
Response
formatDateTimeInJodaSyntax
Introducido en: v20.1.0 Es similar aformatDateTime, excepto que formatea la fecha y hora con el estilo de Joda en lugar del estilo de MySQL. Consulta la documentación de Joda Time.
La operación opuesta de esta función es parseDateTimeInJodaSyntax.
Mediante campos de reemplazo, puede definir un patrón para la cadena resultante.
Campos de reemplazo:
Sintaxis
datetime— Una fecha o una fecha y hora para formatear.DateTimeoDateoDate32oDateTime64format— Cadena de formato con campos de reemplazo de estilo Joda.Stringtimezone— Opcional. Nombre de la zona horaria para la hora formateada.String
String
Ejemplos
Formatear datetime con sintaxis Joda
Query
Response
fromDaysSinceYearZero
Introducido en: v23.11.0 Para un número determinado de días transcurridos desde el 1 de enero de 0000, devuelve la fecha correspondiente en el calendario gregoriano proléptico definido por la norma ISO 8601. El cálculo es el mismo que el de la funciónFROM_DAYS() de MySQL. El resultado no está definido si no puede representarse dentro de los límites del tipo Date.
Sintaxis
FROM_DAYS
Argumentos
days— La cantidad de días transcurridos desde el año cero.UInt32
Date
Ejemplos
Convertir los días transcurridos desde el año cero en fechas
Query
Response
fromDaysSinceYearZero32
Introducido en: v23.11.0 Para un número determinado de días transcurridos desde el 1 de enero de 0000, devuelve la fecha correspondiente en el calendario gregoriano proléptico definido por ISO 8601. El cálculo es el mismo que el de la funciónFROM_DAYS() de MySQL. El resultado no está definido si no puede representarse dentro de los límites del tipo Date32.
Sintaxis
days— El número de días transcurridos desde el año cero.UInt32
Date32
Ejemplos
Convertir días desde el año cero en fechas
Query
Response
fromModifiedJulianDay
Introducido en: v21.1.0 Convierte un número de día juliano modificado en una fecha del calendario gregoriano proléptico en formato de textoYYYY-MM-DD. Esta función admite números de día entre -678941 y 2973483 (que representan 0000-01-01 y 9999-12-31, respectivamente). Genera una excepción si el número de día está fuera del rango admitido.
Sintaxis
day— número de Día Juliano Modificado.(U)Int*
String
Ejemplos
Convertir un Día Juliano Modificado en fecha
Query
Response
fromModifiedJulianDayOrNull
Introducido en: v21.1.0 Similar afromModifiedJulianDay(), pero en lugar de lanzar una excepción, devuelve NULL.
Sintaxis
day— número de día juliano modificado.(U)Int*
day es válido; de lo contrario, null. Nullable(String)
Ejemplos
Convertir el día juliano modificado en fecha con manejo de null
Query
Response
fromUTCTimestamp
Introducido en: v22.1.0 Convierte un valor de fecha o de fecha con hora de la zona horaria UTC en un valor de fecha o de fecha con hora con la zona horaria especificada. Esta función se incluye principalmente por compatibilidad con Apache Spark y marcos de trabajo similares. Sintaxisfrom_utc_timestamp
Argumentos
datetime— Un valor constante de fecha o fecha con hora, o una expresión.DateTimeoDateTime64time_zone— Un valor constante de tipo String o una expresión que representa la zona horaria.String
DateTime o DateTime64
Ejemplos
Convierte la zona horaria UTC a la zona horaria especificada
Query
Response
fromUnixTimestamp
Introducido en: v20.8.0 Esta función convierte una marca de tiempo Unix en una fecha de calendario y una hora del día. Se puede llamar de dos maneras:- Cuando se le proporciona un solo argumento de tipo
Integer, devuelve un valor de tipoDateTime, es decir, se comporta comotoDateTime. - Cuando se le proporcionan dos o tres argumentos, donde el primer argumento es un valor de tipo
Integer,Date,Date32,DateTimeoDateTime64, el segundo argumento es una cadena de formato constante y el tercer argumento es una cadena constante de zona horaria opcional, la función devuelve un valor de tipoString, es decir, se comporta comoformatDateTime. En este caso, se usa el estilo de formato de fecha y hora de MySQL.
FROM_UNIXTIME
Argumentos
timestamp— marca de tiempo Unix o valor de fecha o fecha con hora.(U)Int*oDateoDate32oDateTimeoDateTime64format— Opcional. Cadena de formato constante para dar formato a la salida.Stringtimezone— Opcional. Cadena constante de zona horaria.String
DateTime del timestamp cuando se llama con un argumento, o un String cuando se llama con dos o tres argumentos. DateTime o String
Ejemplos
Convertir una marca de tiempo Unix a DateTime
Query
Response
Query
Response
fromUnixTimestampInJodaSyntax
Introducido en: v23.1.0 Esta función convierte una marca de tiempo Unix en una fecha de calendario y una hora del día. Se puede llamar de dos maneras: Cuando recibe un único argumento de tipoInteger, devuelve un valor de tipo DateTime; es decir, se comporta como toDateTime.
Cuando recibe dos o tres argumentos, donde el primero es un valor de tipo Integer, Date, Date32, DateTime o DateTime64, el segundo es una cadena de formato constante y el tercero es una cadena constante opcional de zona horaria, la función devuelve un valor de tipo String; es decir, se comporta como formatDateTimeInJodaSyntax. En este caso, se utiliza el estilo de formato de fecha y hora de Joda.
Sintaxis
timestamp— marca de tiempo Unix o valor de fecha y hora.(U)Int*oDateoDate32oDateTimeoDateTime64format— Opcional. Cadena de formato constante con sintaxis Joda para el formato de salida.Stringtimezone— Opcional. Cadena constante de zona horaria.String
DateTime o String
Ejemplos
Convertir una marca de tiempo Unix con formato Joda
Query
Response
localtime
Introducido en: v26.7.0 Devuelve la hora actual del día en la zona horaria del servidor (o la sesión) en el momento del análisis de la consulta. La función es una expresión constante. Corresponde alLOCALTIME estándar de SQL / PostgreSQL y equivale a CAST(now() AS Time).
Esta función es no determinista: puede devolver resultados diferentes para los mismos argumentos.
- Ninguno.
Time
Ejemplos
Sintaxis estándar de SQL sin paréntesis
Query
Response
makeDate
Introducido en: v22.6.0 Crea unDate a partir de:
- un año, un mes y un día
- un año y el día del año
year— Número de año.(U)Int*oFloat*oDecimalmonth— Número de mes (1-12).(U)Int*oFloat*oDecimalday— Día del mes (1-31).(U)Int*oFloat*oDecimalday_of_year— Día del año (1-365).(U)Int*oFloat*oDecimal
Date construido a partir de los argumentos proporcionados Date
Ejemplos
Fecha a partir de un año, mes y día
Query
Response
Query
Response
makeDate32
Introducido en: v22.6.0 Crea unDate32 a partir de:
- un año, un mes y un día
- un año y el día del año
year— Año.(U)Int*oFloat*oDecimalmonth— Número de mes (1-12).(U)Int*oFloat*oDecimalday— Día del mes (1-31).(U)Int*oFloat*oDecimalday_of_year— Día del año (1-365).(U)Int*oFloat*oDecimal
Date32 construido a partir de los argumentos proporcionados Date32
Ejemplos
Date32 a partir de un año, un mes y un día
Query
Response
Query
Response
makeDateTime
Introducido en: v22.6.0 Crea unDateTime a partir del año, el mes, el día, la hora, el minuto y el segundo, con una zona horaria opcional.
Sintaxis
year— Año.(U)Int*oFloat*oDecimalmonth— Número de mes (1-12).(U)Int*oFloat*oDecimalday— Día del mes (1-31).(U)Int*oFloat*oDecimalhour— Hora (0-23).(U)Int*oFloat*oDecimalminute— Minuto (0-59).(U)Int*oFloat*oDecimalsecond— Segundo (0-59).(U)Int*oFloat*oDecimaltimezone— Nombre de la zona horaria.String
DateTime construido a partir de los argumentos proporcionados DateTime
Ejemplos
DateTime a partir de año, mes, día, hora, minuto y segundo
Query
Response
makeDateTime64
Introducido en: v22.6.0 Crea unDateTime64 a partir del año, el mes, el día, la hora, el minuto y el segundo, con fracción, precisión y zona horaria opcionales.
Sintaxis
year— Número de año.(U)Int*oFloat*oDecimalmonth— Número de mes (1-12).(U)Int*oFloat*oDecimalday— Día del mes (1-31).(U)Int*oFloat*oDecimalhour— Hora (0-23).(U)Int*oFloat*oDecimalminute— Minuto (0-59).(U)Int*oFloat*oDecimalsecond— Segundo (0-59).(U)Int*oFloat*oDecimalfraction— Parte fraccionaria del segundo.(U)Int*oFloat*oDecimalprecision— Precisión de la parte fraccionaria (0-9).UInt8timezone— Nombre de la zona horaria.String
DateTime64 construido a partir de los argumentos proporcionados DateTime64
Ejemplos
DateTime64 a partir de year, month, day, hour, minute y second
Query
Response
monthName
Introducido en: v22.1.0 Devuelve el nombre del mes como una cadena a partir de un valor de fecha o de fecha con hora. Sintaxisdatetime— Fecha o fecha con componente de hora.DateoDate32oDateTimeoDateTime64
String
Ejemplos
Obtener el nombre del mes a partir de una fecha
Query
Response
now
Introducido en: v1.1.0 Devuelve la fecha y hora actuales en el momento del análisis de la consulta. La función es una expresión constante.Esta función no determinista: puede devolver resultados diferentes para los mismos argumentos.
localtimestamp, current_timestamp
Argumentos
timezone— Opcional. Nombre de la zona horaria del valor devuelto.String
DateTime
Ejemplos
Consulta sin zona horaria
Query
Response
Query
Response
Query
Response
now64
Introducido en: v20.1.0 Devuelve la fecha y hora actuales con precisión de fracciones de segundo en el momento del análisis de la consulta. La función es una expresión constante.Esta función no determinista: puede devolver resultados diferentes para los mismos argumentos.
scale— Opcional. Tamaño del tick (precisión): 10^-precisión segundos. Rango válido: [0 : 9]. Normalmente se usan 3 (predeterminado) (milisegundos), 6 (microsegundos) y 9 (nanosegundos).UInt8timezone— Opcional. Nombre de la zona horaria del valor devuelto.String
DateTime64
Ejemplos
Consulta con precisión predeterminada y personalizada
Query
Response
nowInBlock
Introducido en: v22.8.0 Devuelve la fecha y hora actuales durante el procesamiento de cada bloque de datos. A diferencia de la funciónnow, no es una expresión constante y el valor devuelto será diferente entre bloques en consultas de larga duración.
Conviene usar esta función para generar la hora actual en consultas INSERT SELECT de larga duración.
Esta función es no determinista: puede devolver resultados diferentes para los mismos argumentos.
timezone— Opcional. Nombre de la zona horaria del valor devuelto.String
DateTime
Ejemplos
Diferencia con la función now()
Query
Response
nowInBlock64
Introducido en: v25.8.0 Devuelve la fecha y hora actuales en el momento en que se procesa cada bloque de datos, en milisegundos. A diferencia de la función now64, no es una expresión constante, y el valor devuelto será diferente entre bloques en consultas de ejecución prolongada. Tiene sentido utilizar esta función para generar la hora actual en consultas INSERT SELECT de ejecución prolongada.Esta función es no determinista: puede devolver resultados diferentes para los mismos argumentos.
scale— Opcional. Tamaño del tick (precisión): 10^-precision segundos. Rango válido: [0 : 9]. Normalmente se usan 3 (predeterminado) (milisegundos), 6 (microsegundos) y 9 (nanosegundos).UInt8timezone— Opcional. Nombre de la zona horaria del valor devuelto.String
DateTime64
Ejemplos
Diferencia con la función now64()
Query
Response
serverTimezone
Introducido en: v23.6.0 Devuelve la zona horaria del servidor, es decir, el valor de la opcióntimezone.
Si la función se ejecuta en el contexto de una tabla distribuida, genera una columna normal con valores correspondientes a cada segmento. De lo contrario, produce un valor constante.
Esta función no es determinista: puede devolver resultados distintos para los mismos argumentos.
serverTimeZone
Argumentos
- Ninguno.
String
Ejemplos
Ejemplo de uso
Query
Response
subDate
Introducido en: v23.9.0 Resta el intervalo de tiempo de la fecha, fecha con hora, o fecha o fecha con hora codificada como cadena proporcionada. Si la resta da como resultado un valor fuera de los límites del tipo de dato, el resultado es indefinido. Sintaxisdatetime— La fecha o la fecha con hora a la que se le restainterval.DateoDate32oDateTimeoDateTime64interval— Intervalo que se resta.Interval
interval a datetime. Date o Date32 o DateTime o DateTime64
Ejemplos
Restar un intervalo a una fecha
Query
Response
subtractDays
Introducido en: v1.1.0 Resta un número especificado de días a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora de la que se restará el número especificado de días.DateoDate32oDateTimeoDateTime64oStringnum— Número de días que se restarán.(U)Int*oFloat*
datetime menos num días. Date o Date32 o DateTime o DateTime64
Ejemplos
Restar días a distintos tipos de fecha
Query
Response
Query
Response
subtractHours
Introducido en: v1.1.0 Resta una cantidad determinada de horas a una fecha, una fecha con hora, o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se le debe restar el número especificado de horas.DateoDate32oDateTimeoDateTime64oStringnum— Número de horas que se deben restar.(U)Int*oFloat*
datetime menos num horas. DateTime o DateTime64(3)
Ejemplos
Restar horas a distintos tipos de fecha
Query
Response
Query
Response
subtractInterval
Introducido en: v22.11.0 Añade un intervalo negado a otro intervalo o a una tupla de intervalos. Nota: Los intervalos del mismo tipo se combinan en un único intervalo. Por ejemplo, si se pasantoIntervalDay(2) y toIntervalDay(1), el resultado será (1) en lugar de (2,1).
Sintaxis
interval_1— Primer intervalo o una tupla de intervalos.IntervaloTuple(Interval)interval_2— Segundo intervalo que debe negarse.Interval
Tuple(T)
Ejemplos
Restar intervalos
Query
Response
subtractMicroseconds
Introducido en: v22.6.0 Resta un número determinado de microsegundos de una fecha con hora o de una fecha con hora codificada como cadena. Sintaxisdatetime— Fecha con hora a la que se restará el número especificado de microsegundos.DateTimeoDateTime64oStringnum— Número de microsegundos que se restará.(U)Int*oFloat*
datetime menos num microsegundos DateTime64
Ejemplos
Restar microsegundos de distintos tipos de fecha y hora
Query
Response
Query
Response
subtractMilliseconds
Introducido en: v22.6.0 Resta una cantidad determinada de milisegundos a una fecha con hora o a una fecha con hora codificada como cadena. Sintaxisdatetime— Fecha con hora de la que se restará el número especificado de milisegundos.DateTimeoDateTime64oStringnum— Número de milisegundos que se restarán.(U)Int*oFloat*
datetime menos num milisegundos DateTime64
Ejemplos
Resta milisegundos de distintos tipos de fecha y hora
Query
Response
Query
Response
subtractMinutes
Introducido en: v1.1.0 Resta un número especificado de minutos a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se le restará el número especificado de minutos.DateoDate32oDateTimeoDateTime64oStringnum— Número de minutos que se restarán.(U)Int*oFloat*
datetime menos num minutos. DateTime o DateTime64(3)
Ejemplos
Restar minutos a distintos tipos de fecha
Query
Response
Query
Response
subtractMonths
Introducido en: v1.1.0 Resta un número determinado de meses de una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se restará el número especificado de meses.DateoDate32oDateTimeoDateTime64oStringnum— Número de meses que se restarán.(U)Int*oFloat*
datetime menos num meses Date o Date32 o DateTime o DateTime64
Ejemplos
Restar meses a distintos tipos de fecha
Query
Response
Query
Response
subtractNanoseconds
Introducido en: v20.1.0 Resta un número determinado de nanosegundos a una fecha con hora o a una fecha con hora codificada como cadena. Sintaxisdatetime— Fecha con hora de la que se restará la cantidad especificada de nanosegundos.DateTimeoDateTime64oStringnum— Cantidad de nanosegundos que se restará.(U)Int*oFloat*
datetime menos num nanosegundos. DateTime64
Ejemplos
Restar nanosegundos a distintos tipos de fecha con hora
Query
Response
Query
Response
subtractQuarters
Introducido en: v20.1.0 Resta un número determinado de trimestres a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se restará el número especificado de trimestres.DateoDate32oDateTimeoDateTime64oStringnum— Número de trimestres que se restarán.(U)Int*oFloat*
datetime menos num trimestres. Date o Date32 o DateTime o DateTime64
Ejemplos
Restar trimestres a distintos tipos de fecha
Query
Response
Query
Response
subtractSeconds
Introducido en: v1.1.0 Resta un número determinado de segundos a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se restará el número especificado de segundos.DateoDate32oDateTimeoDateTime64oStringnum— Número de segundos que se restarán.(U)Int*oFloat*
datetime menos num segundos. DateTime o DateTime64(3)
Ejemplos
Restar segundos a distintos tipos de fecha
Query
Response
Query
Response
subtractTupleOfIntervals
Introducido en: v22.11.0 Resta de forma consecutiva una tupla de intervalos a una fecha o a una fecha con hora. Sintaxisdatetime— Fecha o fecha con hora de la que se restarán intervalos.DateoDate32oDateTimeoDateTime64intervals— tupla de intervalos que se restarán dedatetime.Tuple(Interval)
date con los intervals restados. Date o Date32 o DateTime o DateTime64
Ejemplos
Restar una tupla de intervalos a una fecha
Query
Response
subtractWeeks
Introducido en: v1.1.0 Resta una cantidad determinada de semanas a una fecha, una fecha con hora o una fecha o fecha con hora codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se le restará el número especificado de semanas.DateoDate32oDateTimeoDateTime64oStringnum— Número de semanas que se restará.(U)Int*oFloat*
datetime menos num semanas. Date o Date32 o DateTime o DateTime64
Ejemplos
Restar semanas a distintos tipos de fecha
Query
Response
Query
Response
subtractYears
Introducido en: v1.1.0 Resta un número determinado de años de una fecha, una fecha con hora o una fecha, o fecha con hora, codificada como cadena. Sintaxisdatetime— Fecha o fecha con hora a la que se le restará la cantidad especificada de años.DateoDate32oDateTimeoDateTime64oStringnum— Cantidad de años que se restará.(U)Int*oFloat*
datetime menos num años. Date o Date32 o DateTime o DateTime64
Ejemplos
Restar años a distintos tipos de fecha
Query
Response
Query
Response
timeDiff
Introducido en: v23.4.0 Devuelve la diferencia en segundos entre dos fechas o entre dos fechas con valores de hora. La diferencia se calcula comoenddate - startdate.
Esta función es equivalente a dateDiff('second', startdate, enddate).
Para calcular diferencias de tiempo en otras unidades (horas, días, meses, etc.), utilice la función dateDiff.
Sintaxis
startdate— El primer valor temporal que se resta (el sustraendo).DateoDate32oDateTimeoDateTime64enddate— El segundo valor temporal del que se resta (el minuendo).DateoDate32oDateTimeoDateTime64
enddate y startdate, expresada en segundos. Int64
Ejemplos
Calcular la diferencia temporal en segundos
Query
Response
Query
Response
Query
Response
timeSlot
Introducido en: v1.1.0 Redondea la hora al inicio de un intervalo de media hora.Aunque esta función puede aceptar valores de los tipos extendidos
Date32 y DateTime64 como argumento,
si se le pasa una hora fuera del rango normal (del año 1970 a 2149 para Date / 2106 para DateTime), producirá resultados incorrectos.time— Hora que se redondeará al inicio de un intervalo de media hora.DateTimeoDate32oDateTime64time_zone— Opcional. Un valor constante de tipo String o una expresión que representa la zona horaria.String
DateTime
Ejemplos
Redondear la hora a un intervalo de media hora
Query
Response
timeSlots
Introducido en: v1.1.0 Para un intervalo de tiempo que comienza enStartTime y se extiende durante Duration segundos, devuelve un array de instantes, formado por puntos de este intervalo redondeados hacia abajo a Size segundos. Size es un parámetro opcional cuyo valor predeterminado es 1800 (30 minutos).
Esto es necesario, por ejemplo, al buscar vistas de página en la sesión correspondiente.
Para DateTime64, la escala del valor devuelto puede diferir de la escala de StartTime. Se toma la escala más alta de todos los argumentos proporcionados.
Sintaxis
StartTime— Hora de inicio del intervalo.DateTimeoDateTime64Duration— Duración del intervalo en segundos.UInt32oDateTime64Size— Opcional. Tamaño de las franjas horarias en segundos. El valor predeterminado es 1800 (30 minutos).UInt32oDateTime64
StartTime). En el caso de DateTime64, la escala del valor devuelto puede diferir de la escala de StartTime: se toma la escala más alta de todos los argumentos proporcionados. Array(DateTime) o Array(DateTime64)
Ejemplos
Generar franjas horarias para un intervalo
Query
Response
timestamp
Introducido en: v23.9.0 Convierte el primer argumentoexpr al tipo DateTime64(6).
Si se proporciona un segundo argumento expr_time, suma la hora especificada al valor convertido.
Sintaxis
expr— Fecha o fecha con hora.Stringexpr_time— Opcional. Hora que se añade al valor convertido.String
expr, o expr con la hora añadida, DateTime64(6)
Ejemplos
Convertir una cadena de fecha en DateTime64(6)
Query
Response
Query
Response
timezone
Introducido en: v21.4.0 Devuelve el nombre de la zona horaria de la sesión actual o convierte un desplazamiento o un nombre de zona horaria en un nombre canónico de zona horaria.Esta función no es determinista: puede devolver resultados diferentes para los mismos argumentos.
timeZone
Argumentos
- Ninguno.
String
Ejemplos
Ejemplo de uso
Query
Response
timezoneOf
Introducido en: v21.4.0 Devuelve el nombre de la zona horaria de un valorDateTime o DateTime64.
Sintaxis
timeZoneOf
Argumentos
datetime— Un valor de tipoDateTimeoDateTime64timezone— Opcional. Nombre de la zona horaria a la que convertir el valordatetime.String
datetime. String
Ejemplos
Ejemplo de uso
Query
Response
timezoneOffset
Introducido en: v21.6.0 Devuelve el desfase horario en segundos con respecto a UTC. La función tiene en cuenta el horario de verano y los cambios históricos de la zona horaria en la fecha y hora especificadas. SintaxistimeZoneOffset
Argumentos
datetime— valor deDateTimepara obtener el desplazamiento de la zona horaria.DateTimeoDateTime64
Int32
Ejemplos
Ejemplo de uso
Query
Response
toDayOfMonth
Introducido en: v1.1.0 Devuelve el día del mes (1-31) de un valorDate o DateTime.
Sintaxis
DAY, DAYOFMONTH
Argumentos
datetime— Fecha o fecha con hora de la que se obtiene el día del mes.DateoDate32oDateTimeoDateTime64
UInt8
Ejemplos
Ejemplo de uso
Query
Response
toDayOfWeek
Introducido en: v1.1.0 Devuelve el número correspondiente al día de la semana de un valorDate o DateTime.
La variante de dos argumentos de toDayOfWeek() le permite especificar si la semana comienza en lunes o en domingo,
y si el valor devuelto debe estar en el rango de 0 a 6 o de 1 a 7.
Sintaxis
DAYOFWEEK
Argumentos
datetime— Fecha o fecha con hora de la que se obtiene el día de la semana.DateoDate32oDateTimeoDateTime64mode— Opcional. Entero que especifica el modo de semana (0-3). Si se omite, el valor predeterminado es 0.UInt8timezone— Opcional. Zona horaria que se utilizará para la conversión.String
Date o DateTime especificado UInt8
Ejemplos
Ejemplo de uso
Query
Response
toDayOfYear
Introducido en: v18.4.0 Devuelve el número de día dentro del año (1-366) de un valorDate o DateTime.
Sintaxis
DAYOFYEAR
Argumentos
datetime— Fecha o fecha con hora de la que se obtiene el día del año.DateoDate32oDateTimeoDateTime64
UInt16
Ejemplos
Ejemplo de uso
Query
Response
toDaysInMonth
Introducido en: v26.3.0 Devuelve el número de días del mes correspondiente a unDate o DateTime.
El valor devuelto está en el intervalo de 28 a 31.
Sintaxis
datetime— Fecha o fecha con hora a partir de la cual se obtiene el número de días del mes.DateoDate32oDateTimeoDateTime64
UInt8
Ejemplos
Ejemplo de uso
Query
Response
toDaysSinceYearZero
Introducido en: v23.9.0 Para una fecha determinada, devuelve el número de días transcurridos desde el 1 de enero de 0000 en el calendario gregoriano proléptico definido por ISO 8601. El cálculo es el mismo que en la funciónTO_DAYS de MySQL.
Sintaxis
TO_DAYS
Argumentos
date— La fecha o fecha con hora para la que se calcula el número de días transcurridos desde el año cero.DateoDate32oDateTimeoDateTime64time_zone— Zona horaria.String
0000-01-01. UInt32
Ejemplos
Calcular los días desde el año cero
Query
Response
toHour
Introducido en: v1.1.0 Devuelve el componente horario (0-23) de un valorDateTime o DateTime64.
Sintaxis
HOUR
Argumentos
datetime— Fecha y hora de la que se extrae la hora.DateTimeoDateTime64
datetime. UInt8
Ejemplos
Ejemplo de uso
Query
Response
toISOWeek
Introducido en: v20.1.0 Devuelve el número de semana ISO de una fecha o una fecha con hora. Esta es una función de compatibilidad equivalente atoWeek(date, 3).
Las semanas ISO comienzan en lunes y la primera semana del año contiene el 4 de enero.
Según la norma ISO 8601, los números de semana están comprendidos entre 1 y 53.
Tenga en cuenta que las fechas cercanas al inicio o al final de un año pueden devolver un número de semana del año anterior o del siguiente. Por ejemplo,
el 29 de diciembre de 2025 devuelve la semana 1 porque cae en la primera semana que contiene el 4 de enero de 2026.
Sintaxis
datetime— Fecha o fecha con hora de la que se obtiene el número de semana ISO.DateoDateTimeoDate32oDateTime64timezone— Opcional. Zona horaria.String
UInt8
Ejemplos
Obtener los números de semana ISO
Query
Response
Query
Response
toISOYear
Introducido en: v18.4.0 Convierte una fecha o una fecha y hora en el número de año según ISO. Sintaxisdatetime— El valor con fecha o fecha y hora.DateoDate32oDateTimeoDateTime64
UInt16
Ejemplos
Obtener el año ISO a partir de valores de fecha
Query
Response
toLastDayOfMonth
Introducido en: v1.1.0 Redondea una fecha o una fecha con hora al último día del mes.El tipo de retorno puede configurarse mediante
enable_extended_results_for_datetime_functions.LAST_DAY
Argumentos
value— La fecha o fecha con hora que se debe redondear al último día del mes.DateoDate32oDateTimeoDateTime64
Date
Ejemplos
Redondear al último día del mes
Query
Response
toLastDayOfWeek
Introducido en: v23.5.0 Redondea una fecha o fecha con hora hacia arriba, hasta el sábado o domingo más cercano.El tipo de retorno puede configurarse mediante
enable_extended_results_for_datetime_functions.datetime— Una fecha o una fecha con hora que se va a convertir.DateoDateTimeoDate32oDateTime64mode— Determina el primer día de la semana, tal como se describe en la funcióntoWeek(). Valor predeterminado:0.UInt8timezone— Opcional. La zona horaria que se usará para la conversión. Si no se especifica, se usa la zona horaria del servidor.String
Date o Date32
Ejemplos
Redondear hacia arriba al sábado o domingo más próximo
Query
Response
toMicrosecond
Introducido en: v25.7.0 Devuelve el componente de microsegundo (0-999999) de un valorDateTime64.
Sintaxis
MICROSECOND
Argumentos
datetime— Fecha y hora de la que se obtiene el microsegundo.DateTime64
datetime. UInt32
Ejemplos
Ejemplo de uso
Query
Response
toMillisecond
Introducido en: v24.2.0 Devuelve el componente de milisegundo (0-999) de un valorDateTime o DateTime64.
Sintaxis
MILLISECOND
Argumentos
datetime— Fecha con hora de la que se obtiene el milisegundo.DateTimeoDateTime64
datetime. UInt16
Ejemplos
Ejemplo de uso
Query
Response
toMinute
Introducido en: v1.1.0 Devuelve el componente de minuto (0-59) de un valorDate o DateTime.
Sintaxis
MINUTE
Argumentos
datetime— Fecha y hora de la que se extrae el minuto.DateTimeoDateTime64
datetime. UInt8
Ejemplos
Ejemplo de uso
Query
Response
toModifiedJulianDay
Introducido en: v21.1.0 Convierte una fecha del calendario gregoriano proléptico en formato de textoYYYY-MM-DD en un número de día juliano modificado de tipo Int32. Esta función admite fechas desde 0000-01-01 hasta 9999-12-31. Genera una excepción si el argumento no puede interpretarse como una fecha o si la fecha no es válida.
Sintaxis
date— La fecha en formato de cadena.StringoFixedString
Int32
Ejemplos
Convertir la fecha a día juliano modificado
Query
Response
toModifiedJulianDayOrNull
Introducida en: v21.1.0 Similar atoModifiedJulianDay(), pero en lugar de lanzar una excepción devuelve NULL.
Sintaxis
date— Fecha en formato de texto.StringoFixedString
date válido; de lo contrario, null. Nullable(Int32)
Ejemplos
Convertir una fecha a día juliano modificado con manejo de null
Query
Response
toMonday
Introducido en: v1.1.0 Redondea una fecha o fecha con hora hacia abajo hasta el lunes de la misma semana. Devuelve la fecha.El tipo de dato devuelto se puede configurar mediante la opción
enable_extended_results_for_datetime_functions.value— Fecha o fecha con hora que se redondea hacia abajo hasta el lunes de esa semana.DateoDate32oDateTimeoDateTime64
Date
Ejemplos
Redondear hacia abajo hasta el lunes de la semana
Query
Response
toMonth
Introducido en: v1.1.0 Devuelve el componente mes (1-12) de un valorDate o DateTime.
Sintaxis
MONTH
Argumentos
datetime— Fecha o fecha con hora de la que se extrae el mes.DateoDate32oDateTimeoDateTime64
UInt8
Ejemplos
Ejemplo de uso
Query
Response
toMonthNumSinceEpoch
Introducido en: v25.3.0 Devuelve el número de meses transcurridos desde el año 1970 Sintaxisdate— Una fecha o una fecha con hora.DateoDateTimeoDateTime64
Query
Response
toNanosecond
Introducido en: v25.7.0 Devuelve el componente de nanosegundo (0-999999999) de un valorDateTime64.
Sintaxis
NANOSECOND
Argumentos
datetime— Fecha y hora de la que se obtiene el nanosegundo.DateTime64
datetime. UInt32
Ejemplos
Ejemplo de uso
Query
Response
toQuarter
Introducido en: v1.1.0 Devuelve el trimestre del año (1-4) correspondiente a un valorDate o DateTime.
Sintaxis
QUARTER
Argumentos
datetime— Fecha o fecha con hora de la que se obtiene el trimestre del año.DateoDate32oDateTimeoDateTime64
UInt8
Ejemplos
Ejemplo de uso
Query
Response
toRelativeDayNum
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en el número de días transcurridos desde un punto fijo determinado en el pasado. El momento exacto es un detalle de implementación y, por lo tanto, esta función no está pensada para usarse de forma independiente. El propósito principal de la función es calcular la diferencia en días entre dos fechas o fechas con hora; por ejemplo,toRelativeDayNum(dt1) - toRelativeDayNum(dt2).
Sintaxis
date— Fecha o fecha con hora.DateoDateTimeoDateTime64
UInt32
Ejemplos
Obtener números relativos de día
Query
Response
toRelativeHourNum
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en el número de horas transcurridas desde un determinado punto fijo en el pasado. El momento exacto es un detalle de implementación, por lo que esta función no está pensada para usarse de forma independiente. El propósito principal de esta función es calcular la diferencia en horas entre dos fechas o fechas con hora; por ejemplo,toRelativeHourNum(dt1) - toRelativeHourNum(dt2).
Sintaxis
date— Fecha o fecha con hora.DateoDateTimeoDateTime64
UInt32
Ejemplos
Obtener números de hora relativos
Query
Response
toRelativeMinuteNum
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en el número de minutos transcurridos desde un momento fijo determinado en el pasado. El momento exacto es un detalle de implementación y, por lo tanto, esta función no está pensada para usarse de forma independiente. El propósito principal de la función es calcular la diferencia en minutos entre dos fechas o fechas con hora; por ejemplo,toRelativeMinuteNum(dt1) - toRelativeMinuteNum(dt2).
Sintaxis
date— Fecha o fecha con hora.DateoDateTimeoDateTime64
UInt32
Ejemplos
Obtener números de minutos relativos
Query
Response
toRelativeMonthNum
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en el número de meses transcurridos desde un determinado punto fijo del pasado. El momento exacto es un detalle de implementación y, por lo tanto, esta función no está pensada para usarse por sí sola. El propósito principal de la función es calcular la diferencia en meses entre dos fechas o fechas con hora; por ejemplo,toRelativeMonthNum(dt1) - toRelativeMonthNum(dt2).
Sintaxis
date— Fecha o fecha con hora.DateoDateTimeoDateTime64
UInt32
Ejemplos
Obtener números relativos de meses
Query
Response
toRelativeQuarterNum
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en el número de trimestres transcurridos desde un determinado punto fijo del pasado. El momento exacto es un detalle de implementación y, por lo tanto, esta función no está pensada para usarse de forma independiente. El propósito principal de la función es calcular la diferencia en trimestres entre dos fechas o fechas con hora; por ejemplo,toRelativeQuarterNum(dt1) - toRelativeQuarterNum(dt2).
Sintaxis
date— Fecha o fecha con hora.DateoDateTimeoDateTime64
UInt32
Ejemplos
Obtener números de trimestre relativos
Query
Response
toRelativeSecondNum
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en el número de segundos transcurridos desde un determinado punto fijo del pasado. El punto exacto en el tiempo es un detalle de implementación y, por lo tanto, esta función no está pensada para usarse por sí sola. La finalidad principal de la función es calcular la diferencia en segundos entre dos fechas o fechas con hora; por ejemplo,toRelativeSecondNum(dt1) - toRelativeSecondNum(dt2).
Sintaxis
date— Fecha o fecha y hora.DateoDateTimeoDateTime64
UInt32
Ejemplos
Obtener números de segundos relativos
Query
Response
toRelativeWeekNum
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en el número de semanas transcurridas desde un determinado punto fijo del pasado. El momento exacto es un detalle de implementación y, por lo tanto, esta función no está pensada para usarse de forma independiente. La finalidad principal de esta función es calcular la diferencia en semanas entre dos fechas o fechas con hora; por ejemplo,toRelativeWeekNum(dt1) - toRelativeWeekNum(dt2).
Sintaxis
date— Fecha o fecha con hora.DateoDateTimeoDateTime64
UInt32
Ejemplos
Obtener números de semana relativos
Query
Response
toRelativeYearNum
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en el número de años transcurridos desde un punto fijo determinado en el pasado. El momento exacto es un detalle de implementación y, por lo tanto, esta función no está pensada para usarse de forma independiente. El propósito principal de la función es calcular la diferencia en años entre dos fechas o fechas con hora, por ejemplo,toRelativeYearNum(dt1) - toRelativeYearNum(dt2).
Sintaxis
date— Fecha o fecha con hora.DateoDateTimeoDateTime64
UInt16
Ejemplos
Obtener números relativos de año
Query
Response
toSecond
Introducido en: v1.1.0 Devuelve el componente de segundo (0-59) de un valorDateTime o DateTime64.
Sintaxis
SECOND
Argumentos
datetime— Fecha con hora de la que se obtiene el segundo.DateTimeoDateTime64
datetime. UInt8
Ejemplos
Ejemplo de uso
Query
Response
toStartOfDay
Introducido en: v1.1.0 redondea hacia abajo una fecha con hora hasta el inicio del día.El tipo de retorno se puede configurar mediante la opción
enable_extended_results_for_datetime_functions.DateTime o DateTime64
Ejemplos
Redondear hacia abajo hasta el inicio del día
Query
Response
toStartOfFifteenMinutes
Introducido en: v1.1.0 Redondea la fecha con hora hacia abajo hasta el inicio del intervalo de quince minutos.El tipo de retorno puede configurarse mediante la opción
enable_extended_results_for_datetime_functions.datetime— Una fecha o una fecha con hora para redondear.DateTimeoDateTime64
DateTime o DateTime64
Ejemplos
Ejemplo
Query
Response
toStartOfFiveMinutes
Introducido en: v22.6.0 Redondea hacia abajo una fecha con hora al inicio del intervalo de cinco minutos más cercano.El tipo de retorno se puede configurar mediante la opción
enable_extended_results_for_datetime_functions.toStartOfFiveMinute
Argumentos
datetime— Una fecha con hora que se va a redondear.DateTimeoDateTime64
DateTime o DateTime64
Ejemplos
Ejemplo
Query
Response
toStartOfHour
Introducido en: v1.1.0 redondea hacia abajo una fecha con hora hasta el inicio de la hora.El tipo de retorno se puede configurar con la opción
enable_extended_results_for_datetime_functions.datetime— Una fecha con hora que se va a redondear.DateTimeoDateTime64
DateTime o DateTime64
Ejemplos
Redondear hacia abajo al inicio de la hora
Query
Response
toStartOfISOYear
Introducido en: v1.1.0 Redondea hacia abajo una fecha o fecha con hora hasta el primer día del año ISO, que puede diferir de un año natural normal. Consulte la fecha de semana ISO.El tipo de retorno se puede configurar mediante la opción
enable_extended_results_for_datetime_functions.value— La fecha o fecha con hora que se debe redondear al primer día del año ISO.DateoDate32oDateTimeoDateTime64
Date
Ejemplos
Redondear al primer día del año ISO
Query
Response
toStartOfInterval
Introducido en: v20.1.0 Esta función generaliza otras funcionestoStartOf*() mediante la sintaxis toStartOfInterval(date_or_date_with_time, INTERVAL x unit [, time_zone]).
Por ejemplo:
toStartOfInterval(t, INTERVAL 1 YEAR)devuelve lo mismo quetoStartOfYear(t),toStartOfInterval(t, INTERVAL 1 MONTH)devuelve lo mismo quetoStartOfMonth(t),toStartOfInterval(t, INTERVAL 1 DAY)devuelve lo mismo quetoStartOfDay(t),toStartOfInterval(t, INTERVAL 15 MINUTE)devuelve lo mismo quetoStartOfFifteenMinutes(t).
Si se especifica la unidad
WEEK, toStartOfInterval asume que las semanas empiezan en lunes. Tenga en cuenta que este comportamiento es distinto del de la función toStartOfWeek, en la que las semanas empiezan en domingo de forma predeterminada.
La segunda sobrecarga emula la función time_bucket() de TimescaleDB y, de forma equivalente, la función date_bin() de PostgreSQL.
Sintaxis
date_bin, time_bucket
Argumentos
value— Valor de fecha o de fecha con hora que se redondea hacia abajo.DateoDateTimeoDateTime64x— Longitud numérica del intervalo. -unit— Unidad de intervalo: YEAR, QUARTER, MONTH, WEEK, DAY, HOUR, MINUTE, SECOND, MILLISECOND, MICROSECOND, NANOSECOND. -time_zone— Opcional. Nombre de la zona horaria como cadena. -origin— Opcional. Punto de origen para el cálculo (solo en la segunda sobrecarga).
DateTime
Ejemplos
Redondeo básico de intervalos
Query
Response
Query
Response
toStartOfMicrosecond
Introducido en: v22.6.0 Redondea hacia abajo una fecha con hora al inicio del microsegundo. Sintaxisdatetime— Fecha y hora.DateTime64timezone— Opcional. Zona horaria del valor devuelto. Si no se especifica, la función usa la zona horaria del parámetrovalue.String
DateTime64
Ejemplos
Consulta sin zona horaria
Query
Response
Query
Response
toStartOfMillisecond
Introducido en: v22.6.0 Redondea hacia abajo una fecha con hora hasta el inicio del milisegundo. Sintaxisdatetime— Fecha y hora.DateTime64timezone— Opcional. Zona horaria del valor devuelto. Si no se especifica, la función usa la zona horaria del parámetrovalue.String
DateTime64
Ejemplos
Consulta sin zona horaria
Query
Response
Query
Response
toStartOfMinute
Introducido en: v1.1.0 Redondea hacia abajo una fecha con hora al inicio del minuto.El tipo de retorno se puede configurar mediante el ajuste
enable_extended_results_for_datetime_functions.datetime— Una fecha con hora que se va a redondear.DateTimeoDateTime64
DateTime o DateTime64
Ejemplos
Redondear hacia abajo al inicio del minuto
Query
Response
toStartOfMonth
Introducido en: v1.1.0 redondea hacia abajo una fecha o una fecha con hora al primer día del mes.El tipo de retorno se puede configurar mediante
enable_extended_results_for_datetime_functions.value— La fecha o fecha con hora que se redondea hacia abajo hasta el primer día del mes.DateoDate32oDateTimeoDateTime64
Date
Ejemplos
Redondear hacia abajo hasta el primer día del mes
Query
Response
toStartOfNanosecond
Introducido en: v22.6.0 Redondea hacia abajo una fecha con hora hasta el inicio del nanosegundo. Sintaxisdatetime— Fecha y hora.DateTime64timezone— Opcional. Zona horaria del valor devuelto. Si no se especifica, la función utiliza la zona horaria del parámetrovalue.String
DateTime64
Ejemplos
Consulta sin zona horaria
Query
Response
Query
Response
toStartOfQuarter
Introducido en: v1.1.0 redondea hacia abajo una fecha o fecha con hora hacia abajo hasta el primer día del trimestre. El primer día del trimestre es el 1 de enero, el 1 de abril, el 1 de julio o el 1 de octubre.El tipo de retorno se puede configurar mediante el ajuste
enable_extended_results_for_datetime_functions.value— La fecha o fecha con hora que se redondeará al primer día del trimestre.DateoDate32oDateTimeoDateTime64
Date
Ejemplos
Redondear al primer día del trimestre
Query
Response
toStartOfSecond
Introducido en: v20.5.0 Redondea hacia abajo una fecha con hora al inicio del segundo. Sintaxisdatetime— Fecha y hora de la que se truncarán las fracciones de segundo.DateTime64timezone— Opcional. Zona horaria del valor devuelto. Si no se especifica, la función usa la zona horaria del parámetrovalue.String
DateTime64
Ejemplos
Consulta sin zona horaria
Query
Response
Query
Response
toStartOfTenMinutes
Introducido en: v20.1.0 Redondea una fecha con hora hacia abajo hasta el inicio del intervalo de diez minutos más cercano.El tipo de retorno se puede configurar mediante
enable_extended_results_for_datetime_functions.datetime— Una fecha con hora.DateTimeoDateTime64
DateTime o DateTime64
Ejemplos
Ejemplo
Query
Response
toStartOfWeek
Introducido en: v20.1.0 Redondea una fecha o una fecha con hora al domingo o lunes más cercano anterior.El tipo de retorno se puede configurar mediante el ajuste
enable_extended_results_for_datetime_functions.datetime— Una fecha o una fecha con hora que se va a convertir.DateoDateTimeoDate32oDateTime64mode— Determina el primer día de la semana, como se describe en la funcióntoWeek(). El valor predeterminado es0.UInt8timezone— La zona horaria que se usará para la conversión. Si no se especifica, se usa la zona horaria del servidor.String
Date o Date32
Ejemplos
Redondear hacia abajo al domingo o lunes más cercano
Query
Response
toStartOfYear
Introducido en: v1.1.0 Redondea hacia abajo una fecha o una fecha con hora hasta el primer día del año. Devuelve la fecha como un objetoDate.
El tipo de retorno se puede configurar mediante
enable_extended_results_for_datetime_functions.value— La fecha o fecha con hora que se redondea a la baja.DateoDate32oDateTimeoDateTime64
Date
Ejemplos
Redondeo a la baja al primer día del año
Query
Response
toTimeWithFixedDate
Introducido en: v25.5.0 Extrae el componente de hora de una fecha con hora. El resultado devuelto es un desplazamiento respecto a un momento fijo, actualmente1970-01-02,
pero el momento exacto es un detalle de implementación que puede cambiar en el futuro.
Por lo tanto, toTimeWithFixedDate no debe usarse de forma independiente.
La función se utiliza principalmente para calcular la diferencia horaria entre dos fechas con hora; por ejemplo, toTimeWithFixedDate(dt1) - toTimeWithFixedDate(dt2).
Esta es la función heredada toTime, renombrada en v25.5 porque el nombre toTime ahora lo utiliza
toTime, que convierte valores al
tipo de datos Time.
Sigue estando disponible con su antiguo nombre, toTime, cuando la configuración
use_legacy_to_time está habilitada (su valor predeterminado es 0 desde v26.7, pero era 1 entre v25.6 y v26.6).
Si el argumento datetime tiene componentes inferiores a un segundo, se descartan en el valor DateTime devuelto, que tiene precisión de segundos.
Sintaxis
datetime— Fecha con hora que se convertirá en una hora.DateTimeoDateTime64timezone— Opcional. Zona horaria del valor devuelto.String
DateTime
Ejemplos
Calcular la diferencia horaria entre dos fechas
Query
Response
Query
Response
Query
Response
toTimezone
Introducido en: v1.1.0 Convierte unDateTime o DateTime64 a la zona horaria especificada.
El valor interno (número de segundos de Unix) del dato no cambia.
Solo cambian el atributo de zona horaria del valor y su representación en cadena.
Sintaxis
toTimeZone
Argumentos
date— El valor que se convertirá.DateTimeoDateTime64timezone— El nombre de la zona horaria de destino.String
DateTime o DateTime64
Ejemplos
Ejemplo de uso
Query
Response
toUTCTimestamp
Introducido en: v23.8.0 Convierte un valor de fecha o de fecha con hora de una zona horaria a una marca temporal UTC. Esta función se incluye principalmente por compatibilidad con Apache Spark y frameworks similares. Sintaxisto_utc_timestamp
Argumentos
datetime— Un valor constante de tipo fecha o fecha con hora, o una expresión.DateTimeoDateTime64time_zone— Un valor constante de tipo String, o una expresión que representa la zona horaria.String
DateTime o DateTime64
Ejemplos
Convertir la zona horaria a UTC
Query
Response
toUnixTimestamp
Introducido en: v1.1.0 Convierte unString, Date o DateTime en un timestamp Unix (segundos desde 1970-01-01 00:00:00 UTC) como un UInt32.
Sintaxis
date— Valor que se va a convertir.DateoDate32oDateTimeoDateTime64oStringtimezone— Opcional. Zona horaria que se utilizará para la conversión. Si no se especifica, se usa la zona horaria del servidor.String
UInt32
Ejemplos
Ejemplo de uso
Query
Response
toWeek
Introducido en: v20.1.0 Esta función devuelve el número de semana de una fecha o fecha con hora. La forma de dos argumentos detoWeek() permite especificar si la semana comienza
en domingo o lunes y si el valor devuelto debe estar en el rango de 0 a 53 o de 1 a 53.
toISOWeek() es una función de compatibilidad equivalente a toWeek(date,3).
La siguiente tabla describe cómo funciona el argumento mode.
Para los valores de
mode con el significado de “con 4 o más días en este año”, las semanas se numeran según ISO 8601:1988:
- Si la semana que contiene el 1 de enero tiene 4 o más días en el nuevo año, es la semana 1.
- En caso contrario, es la última semana del año anterior, y la semana siguiente es la semana 1.
mode con el significado de “contiene el 1 de enero”, la semana que contiene el 1 de enero es la semana 1.
No importa cuántos días del nuevo año contenga esa semana, aunque contenga solo un día.
Es decir, si la última semana de diciembre contiene el 1 de enero del año siguiente, será la semana 1 del año siguiente.
El primer argumento también puede especificarse como String en un formato compatible con parseDateTime64BestEffort. La compatibilidad con argumentos de tipo cadena existe solo por motivos de compatibilidad con MySQL, ya que ciertas herramientas de 3rd party la requieren. Como la compatibilidad con argumentos de tipo cadena puede pasar a depender en el futuro de nuevas configuraciones de compatibilidad con MySQL y, además, el análisis de cadenas suele ser lento, se recomienda no usarla.
Sintaxis
week
Argumentos
datetime— Fecha o fecha con hora a partir de la cual se obtiene el número de semana.DateoDateTimemode— Opcional. Un valor de0a9determina el primer día de la semana y el rango del número de semana. Valor predeterminado:0. -time_zone— Opcional. Zona horaria.String
UInt32
Ejemplos
Obtener el número de semana con diferentes modos
Query
Response
toYYYYMM
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en un númeroUInt32 que contiene el año y el número del mes (YYYY * 100 + MM).
Acepta un segundo argumento opcional de zona horaria. Si se especifica, la zona horaria debe ser una constante de cadena.
Esta función es la inversa de la función YYYYMMDDToDate().
Sintaxis
datetime— Una fecha o una fecha con hora para convertir.DateoDate32oDateTimeoDateTime64timezone— Opcional. Zona horaria para la conversión. Si se proporciona, la zona horaria debe ser una constante de cadena.String
UInt32
Ejemplos
Convertir una fecha y hora al formato YYYYMM en otra zona horaria
Query
Response
toYYYYMMDD
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en un númeroUInt32 que contiene el año, el mes y el día (YYYY * 10000 + MM * 100 + DD). Acepta un segundo argumento opcional de zona horaria. Si se proporciona, la zona horaria debe ser una constante de cadena.
Sintaxis
datetime— Una fecha o una fecha con hora que se va a convertir.DateoDate32oDateTimeoDateTime64timezone— Opcional. Zona horaria para la conversión. Si se especifica, la zona horaria debe ser una constante de cadena.String
UInt32 que contiene el año, el mes y el día (YYYY * 10000 + MM * 100 + DD). UInt32
Ejemplos
Convertir una fecha al formato YYYYMMDD en otra zona horaria
Query
Response
toYYYYMMDDhhmmss
Introducido en: v1.1.0 Convierte una fecha o una fecha con hora en un númeroUInt64 que contiene el año, el mes y el día (YYYY * 10000000000 + MM * 100000000 + DD * 1000000 + hh * 10000 + mm * 100 + ss).
Acepta un segundo argumento opcional de zona horaria. Si se proporciona, la zona horaria debe ser una constante de cadena.
Sintaxis
datetime— Fecha o fecha con hora que se va a convertir.DateoDate32oDateTimeoDateTime64timezone— Opcional. Zona horaria para la conversión. Si se proporciona, la zona horaria debe ser una constante de cadena.String
UInt64 que contiene el año, el mes, el día, la hora, el minuto y el segundo (YYYY * 10000000000 + MM * 100000000 + DD * 1000000 + hh * 10000 + mm * 100 + ss). UInt64
Ejemplos
Convertir una fecha y hora al formato YYYYMMDDhhmmss
Query
Response
toYear
Introducido en: v1.1.0 Devuelve el componente de año (d. C.) de un valorDate o DateTime.
Sintaxis
YEAR
Argumentos
datetime— Fecha o fecha con hora de la que se obtiene el año.DateoDate32oDateTimeoDateTime64
Date o DateTime proporcionada UInt16
Ejemplos
Ejemplo de uso
Query
Response
toYearNumSinceEpoch
Introducido en: v25.3.0 Devuelve el número de años transcurridos desde 1970 Sintaxisdate— Una fecha o una fecha con hora que se va a convertir.DateoDateTimeoDateTime64
Query
Response
toYearWeek
Introduced in: v20.1.0 Devuelve el año y la semana de una fecha. El año del resultado puede ser distinto del año del argumento de fecha en la primera y la última semana del año. El argumento mode funciona igual que el argumento mode detoWeek().
Advertencia: El número de semana que devuelve toYearWeek() puede ser diferente del que devuelve toWeek(). toWeek() siempre devuelve el número de semana en el contexto del año indicado y, si toWeek() devuelve 0, toYearWeek() devuelve el valor correspondiente a la última semana del año anterior. Consulte prev_yearWeek en el ejemplo siguiente.
El primer argumento también puede especificarse como String en un formato compatible con parseDateTime64BestEffort. La compatibilidad con argumentos de cadena existe solo por motivos de compatibilidad con MySQL, ya que determinadas herramientas de 3rd party la requieren. Como en el futuro la compatibilidad con argumentos de cadena podría pasar a depender de nuevas configuraciones de compatibilidad con MySQL y, además, el análisis de cadenas suele ser lento, se recomienda no usarla.
Sintaxis
yearweek
Argumentos
datetime— Fecha o fecha con hora de la que se obtienen el año y la semana.DateoDateTimemode— Opcional. Un valor de0a9que determina el primer día de la semana y el rango del número de semana. El valor predeterminado es0. -timezone— Opcional. Zona horaria.String
UInt32
Ejemplos
Obtener combinaciones de año-semana con distintos modos
Query
Response
today
Introducido en: v1.1.0 Devuelve la fecha actual en el momento del análisis de la consulta. Igual quetoDate(now()).
Esta función no es determinista: puede devolver resultados diferentes para los mismos argumentos.
current_date, curdate
Argumentos
- Ninguno.
Date
Ejemplos
Ejemplo de uso
Query
Response
Query
Response
yesterday
Introducido en: v1.1.0 No acepta argumentos y devuelve la fecha de ayer en uno de los puntos del análisis de la consulta.Esta función no es determinista: puede devolver resultados diferentes con los mismos argumentos.
- Ninguno.
Date
Ejemplos
Obtener la fecha de ayer
Query
Response