Europe/Amsterdam. Nesse caso, é usado o fuso horário especificado em vez do fuso local (padrão).
Exemplo
Para manter a compatibilidade com o padrão SQL, as seguintes funções,
NOW, CURRENT_TIMESTAMP, LOCALTIME, LOCALTIMESTAMP, TODAY e CURRENT_DATE, podem ser usadas sem parênteses.UTCTimestamp
Introduzido na versão: v22.11.0 Retorna a data e a hora atuais no momento da análise da consulta. A função é uma expressão constante. Esta função retorna o mesmo resultado quenow('UTC'). Ela foi adicionada apenas para oferecer suporte ao MySQL. now é a forma de uso preferida.
Esta função é não determinística: pode retornar resultados diferentes para os mesmos argumentos.
UTC_timestamp
Argumentos
- Nenhum.
DateTime
Exemplos
Obter o timestamp UTC atual
Query
Response
YYYYMMDDToDate
Introduzido em: v23.9.0 Converte um número que contém o ano, o mês e o dia em umDate.
Esta função é o inverso da função toYYYYMMDD().
A saída é indefinida se a entrada não representar um valor de Date válido.
Sintaxe
Date com base nos argumentos fornecidos Date
Exemplos
Exemplo
Query
Response
YYYYMMDDToDate32
Introduzido em: v23.9.0 Converte um número contendo o ano, o mês e o dia em umDate32.
Esta função é o inverso da função toYYYYMMDD().
A saída é indefinida se a entrada não representar um valor Date32 válido.
Sintaxe
Date32 a partir dos argumentos fornecidos Date32
Exemplos
Exemplo
Query
Response
YYYYMMDDhhmmssToDateTime
Introduzido em: v23.9.0 Converte um número que contém o ano, o mês, o dia, a hora, o minuto e o segundo emDateTime.
Esta função é o oposto da função toYYYYMMDDhhmmss().
A saída é indefinida se a entrada não codificar um valor DateTime válido.
Sintaxe
YYYYMMDDhhmmss— Número que contém o ano, mês, dia, hora, minuto e segundo.(U)Int*ouFloat*ouDecimaltimezone— Nome do fuso horário.String
DateTime a partir dos argumentos fornecidos DateTime
Exemplos
Exemplo
Query
Response
YYYYMMDDhhmmssToDateTime64
Introduzido em: v23.9.0 Converte um número com ano, mês, dia, hora, minuto e segundo em umDateTime64.
Esta função é o oposto da função toYYYYMMDDhhmmss().
A saída é indefinida se a entrada não codificar um valor DateTime64 válido.
Sintaxe
YYYYMMDDhhmmss— Número que contém o ano, mês, dia, hora, minuto e segundo.(U)Int*ouFloat*ouDecimalprecision— Precisão da parte fracionária (0-9).UInt8timezone— Nome do fuso horário.String
DateTime64 com base nos argumentos fornecidos DateTime64
Exemplos
Exemplo
Query
Response
addDate
Introduzido em: v23.9.0 Adiciona o intervalo de tempo à data, à data e hora ou à data ou data e hora codificada como string fornecida. Se a adição resultar em um valor fora dos limites do tipo de dado, o resultado será indefinido. Sintaxedatetime— A data ou data e hora à qualintervalé adicionado.DateouDate32ouDateTimeouDateTime64ouStringinterval— Intervalo a ser adicionado.Interval
interval a datetime. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Adicionar intervalo a uma data
Query
Response
addDays
Introduzido em: v1.1.0 Adiciona um número especificado de dias a uma data, uma data e hora ou uma data ou data e hora codificada como string. Sintaxedatetime— Data ou data e hora à qual adicionar o número especificado de dias.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de dias a serem adicionados.(U)Int*ouFloat*
datetime com num dias adicionados. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Adicionar dias a diferentes tipos de data
Query
Response
Query
Response
addHours
Introduzido em: v1.1.0 Adiciona um número especificado de horas a uma data, uma data e hora ou uma data ou data e hora codificada como string. Sintaxedatetime— Data ou data e hora à qual será adicionado o número especificado de horas.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de horas a serem adicionadas.(U)Int*ouFloat*
datetime acrescido de num horas DateTime ou DateTime64(3)
Exemplos
Adicionar horas a diferentes tipos de data
Query
Response
Query
Response
addInterval
Introduzido em: v22.11.0 Adiciona um intervalo a outro intervalo ou a uma tupla de intervalos.Intervalos do mesmo tipo serão combinados em um único intervalo. Por exemplo, se
toIntervalDay(1) e toIntervalDay(2) forem passados, o resultado será (3) em vez de (1,1).interval_1— Primeiro intervalo ou tupla de intervalos.IntervalouTuple(Interval)interval_2— Segundo intervalo a ser somado.Interval
Tuple(Interval)
Exemplos
Somar intervalos
Query
Response
addMicroseconds
Introduzido em: v22.6.0 Adiciona um número especificado de microssegundos a uma data e hora ou a uma data e hora codificada como string. Sintaxedatetime— Data e hora à qual adicionar o número especificado de microssegundos.DateTimeouDateTime64ouStringnum— Número de microssegundos a adicionar.(U)Int*ouFloat*
date_time mais num microssegundos DateTime64
Exemplos
Adicionar microssegundos a diferentes tipos de data e hora
Query
Response
Query
Response
addMilliseconds
Introduzido em: v22.6.0 Adiciona um número especificado de milissegundos a uma data e hora ou a uma data e hora codificada como string. Sintaxedatetime— Data e hora à qual será adicionado o número especificado de milissegundos.DateTimeouDateTime64ouStringnum— Número de milissegundos a adicionar.(U)Int*ouFloat*
datetime mais num milissegundos DateTime64
Exemplos
Adicionar milissegundos a diferentes tipos de data e hora
Query
Response
Query
Response
addMinutes
Introduzido em: v1.1.0 Adiciona um número especificado de minutos a uma data, uma data e hora ou uma data ou data e hora codificada como string. Sintaxedatetime— Data ou data e hora à qual será adicionado o número especificado de minutos.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de minutos a adicionar.(U)Int*ouFloat*
datetime acrescido de num minutos DateTime ou DateTime64(3)
Exemplos
Adicionar minutos a diferentes tipos de data
Query
Response
Query
Response
addMonths
Introduzido em: v1.1.0 Adiciona um número especificado de meses a uma data, uma data e hora ou uma data ou data e hora codificada como string. Sintaxedatetime— Data ou data/hora à qual adicionar o número especificado de meses.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de meses a adicionar.(U)Int*ouFloat*
datetime acrescido de num meses. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Adicionar meses a diferentes tipos de data
Query
Response
Query
Response
addNanoseconds
Introduzido em: v22.6.0 Adiciona um número especificado de nanossegundos a uma data e hora ou a uma data e hora codificada como string. Sintaxedatetime— Data e hora à qual será adicionado o número especificado de nanossegundos.DateTimeouDateTime64ouStringnum— Número de nanossegundos a adicionar.(U)Int*ouFloat*
datetime mais num nanossegundos. DateTime64
Exemplos
Adicionar nanossegundos a diferentes tipos de data e hora
Query
Response
Query
Response
addQuarters
Introduzido em: v20.1.0 Adiciona um número especificado de trimestres a uma data, uma data e hora ou uma data ou data e hora codificada como string. Sintaxedatetime— Data ou data e hora à qual será adicionado o número especificado de trimestres.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de trimestres a adicionar.(U)Int*ouFloat*
datetime mais num trimestres Date ou Date32 ou DateTime ou DateTime64
Exemplos
Adicionar trimestres a diferentes tipos de data
Query
Response
Query
Response
addSeconds
Introduzido na versão: v1.1.0 Adiciona um número especificado de segundos a uma data, uma data e hora ou uma data ou data e hora codificada como string. Sintaxedatetime— Data ou data e hora à qual será adicionado o número especificado de segundos.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de segundos a adicionar.(U)Int*ouFloat*
datetime mais num segundos DateTime ou DateTime64(3)
Exemplos
Adicionar segundos a diferentes tipos de data
Query
Response
Query
Response
addTupleOfIntervals
Introduzido em: v22.11.0 Adiciona consecutivamente uma tupla de intervalos a uma data ou a uma data e hora. Sintaxedatetime— Data ou data e hora à qual serão adicionados intervalos.DateouDate32ouDateTimeouDateTime64intervals— Tuple de intervalos a ser adicionada adatetime.Tuple(Interval)
date com intervals adicionados. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Adicionar Tuple de intervalos à data
Query
Response
addWeeks
Introduzido em: v1.1.0 Adiciona um número especificado de semanas a uma data, uma data e hora ou uma data ou data com hora codificada como string. Sintaxedatetime— Data ou data e hora à qual será adicionado o número especificado de semanas.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de semanas a adicionar.(U)Int*ouFloat*
datetime mais num semanas. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Adicionar semanas a diferentes tipos de data
Query
Response
Query
Response
addYears
Introduzido em: v1.1.0 Adiciona um número especificado de anos a uma data, uma data e hora ou uma data, ou data e hora, codificada como string. Sintaxedatetime— Data ou data e hora à qual será adicionado o número especificado de anos.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de anos a adicionar.(U)Int*ouFloat*
datetime acrescido de num anos Date ou Date32 ou DateTime ou DateTime64
Exemplos
Adicionar anos a diferentes tipos de data
Query
Response
Query
Response
age
Introduzido em: v23.1.0 Retorna o componente da unidade da diferença entrestartdate e enddate.
A diferença é calculada com precisão de 1 nanossegundo.
Por exemplo, a diferença entre 2021-12-29 e 2022-01-01 é de 3 dias para a unidade de dia,
0 meses para a unidade de mês e 0 anos para a unidade de ano.
Para uma alternativa a age, consulte a função dateDiff.
Sintaxe
unit— O tipo de intervalo do resultado.
startdate— O primeiro valor de data/hora a ser subtraído (o subtraendo).DateouDate32ouDateTimeouDateTime64enddate— O segundo valor de data/hora do qual será feita a subtração (o minuendo).DateouDate32ouDateTimeouDateTime64timezone— Opcional. Nome do fuso horário. Se especificado, ele é aplicado tanto a startdate quanto a enddate. Se não for especificado, serão usados os fusos horários de startdate e enddate. Se eles não forem iguais, o resultado será indefinido.String
unit. Int32
Exemplos
Calcular a idade em horas
Query
Response
Query
Response
changeDay
Introduzido em: v24.7.0 Altera o componente de dia de uma data ou data e hora. Sintaxedate_or_datetime— O valor a ser alterado.DateouDate32ouDateTimeouDateTime64value— O novo valor.(U)Int*
date_or_datetime, com o componente de dia modificado. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Exemplo de uso
Query
Response
changeHour
Introduzido em: v24.7.0 Altera o componente de hora de uma data ou de uma data e hora. Sintaxedate_or_datetime— O valor a ser alterado.DateouDate32ouDateTimeouDateTime64value— O novo valor.(U)Int*
date_or_datetime, com o componente de hora modificado. DateTime ou DateTime64
Exemplos
Exemplo de uso
Query
Response
changeMinute
Introduzido em: v24.7.0 Altera o componente de minuto de umdate or date time.
Sintaxe
date_or_datetime— O valor a ser alterado.DateouDate32ouDateTimeouDateTime64value— O novo valor.(U)Int*
date_or_datetime, com o componente de minuto alterado. DateTime ou DateTime64
Exemplos
Exemplo de uso
Query
Response
changeMonth
Introduzido em: v24.7.0 Altera o componente de mês de uma data ou data e hora. Sintaxedate_or_datetime— O valor a ser alterado.DateouDate32ouDateTimeouDateTime64value— O novo valor.(U)Int*
date_or_datetime, com o componente de mês modificado. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Exemplo de uso
Query
Response
changeSecond
Introduzido em: v24.7.0 Altera o componente de segundo de uma data ou data e hora. Sintaxedate_or_datetime— O valor a ser alterado.DateouDate32ouDateTimeouDateTime64value— O novo valor.(U)Int*
date_or_datetime, com o componente de segundos modificado. DateTime ou DateTime64
Exemplos
Exemplo de uso
Query
Response
changeYear
Introduzido em: v24.7.0 Altera o componente de ano de uma data ou data e hora. Sintaxedate_or_datetime— O valor a ser alterado.DateouDate32ouDateTimeouDateTime64value— O novo valor.(U)Int*
date_or_datetime, com o componente de ano modificado. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Exemplo de uso
Query
Response
dateDiff
Introduzido em: v23.4.0 Retorna a quantidade de limites daunit especificada cruzados entre startdate e enddate.
A diferença é calculada usando unidades relativas. Por exemplo, a diferença entre 2021-12-29 e 2022-01-01 é de 3 dias para a unidade day
(consulte toRelativeDayNum), 1 mês para a unidade month (consulte toRelativeMonthNum) e 1 ano para a unidade year
(consulte toRelativeYearNum).
Se a unidade week for especificada, dateDiff assume que as semanas começam na segunda-feira.
Observe que esse comportamento é diferente do da função toWeek(), na qual as semanas começam por padrão no domingo.
Para ver uma alternativa a dateDiff, consulte a função age.
Sintaxe
timestampDiff, TIMESTAMP_DIFF, DATE_DIFF, date_diff, timestamp_diff
Argumentos
unit— O tipo de intervalo do resultado.
startdate— O primeiro valor de data/hora a ser subtraído (o subtraendo).DateouDate32ouDateTimeouDateTime64enddate— O segundo valor de data/hora do qual subtrair (o minuendo).DateouDate32ouDateTimeouDateTime64timezone— Opcional. Nome do fuso horário. Se especificado, ele será aplicado astartdateeenddate. Se não for especificado, serão usados os fusos horários destartdateeenddate. Se eles não forem iguais, o resultado será indefinido.String
enddate e startdate, expressa em unit. Int64
Exemplos
Calcular a diferença entre datas em horas
Query
Response
Query
Response
dateName
Introduzido em: v21.7.0 Retorna a parte da data especificada. Valores possíveis:- ‘year’
- ‘quarter’
- ‘month’
- ‘week’
- ‘dayofyear’
- ‘day’
- ‘weekday’
- ‘hour’
- ‘minute’
- ‘second’
date_part— A parte da data que você deseja extrair.Stringdatetime— Um valor de data ou data e hora.DateouDate32ouDateTimeouDateTime64timezone— Opcional. Fuso horário.String
String
Exemplos
Extrair diferentes partes da data
Query
Response
dateTrunc
Introduzido em: v20.8.0 Trunca um valor de data e hora até a parte especificada da data. SintaxeDATE_TRUNC
Argumentos
unit— O tipo de intervalo usado para truncar o resultado. Valores possíveis:nanosecond(somente DateTime64),microsecond(somente DateTime64),millisecond(somente DateTime64),second,minute,hour,day,week,month,quarter,year.Stringdatetime— Data e hora.DateouDate32ouDateTimeouDateTime64timezone— Opcional. Nome do fuso horário dodatetimeretornado. Se não for especificado, a função usa o fuso horário do parâmetrodatetime.String
Exemplos
Truncar sem fuso horário
Query
Response
Query
Response
formatDateTime
Introduzido em: v1.1.0 Formata uma data ou data e hora de acordo com a string de formato fornecida.format é uma expressão constante, portanto, não é possível ter vários formatos para uma única coluna de resultado.
formatDateTime usa o estilo de formatação de data e hora do MySQL; consulte a documentação do MySQL.
A operação oposta desta função é parseDateTime.
Usando campos de substituição, você pode definir um padrão para a string resultante.
A coluna de exemplo na tabela abaixo mostra o resultado da formatação para 2018-01-02 22:33:44.
Campos de substituição:
- Em versões do ClickHouse anteriores à v23.4,
%fimprime um único zero (0) se o valor formatado for um Date, Date32 ou DateTime (que não têm segundos fracionários) ou um DateTime64 com precisão 0. - Em versões do ClickHouse anteriores à v25.1,
%fimprime tantos dígitos quantos forem especificados pela escala do DateTime64, em vez de 6 dígitos fixos. - Em versões do ClickHouse anteriores à v23.4,
%Mimprime o minuto (00-59) em vez do nome completo do mês (January-December).
DATE_FORMAT
Argumentos
datetime— Uma data ou data e hora a ser formatada.DateouDate32ouDateTimeouDateTime64format— String de formato com campos de substituição.Stringtimezone— Opcional. Nome do fuso horário para a data e hora formatadas.String
String
Exemplos
Formatar data com marcador de ano
Query
Response
Query
Response
Query
Response
formatDateTimeInJodaSyntax
Introduzido em: v20.1.0 Semelhante aformatDateTime, mas formata data e hora no estilo Joda em vez do estilo MySQL. Consulte a documentação do Joda Time.
A operação oposta desta função é parseDateTimeInJodaSyntax.
Usando campos de substituição, você pode definir um padrão para a string resultante.
Campos de substituição:
Sintaxe
datetime— Uma data ou data e hora a ser formatada.DateTimeouDateouDate32ouDateTime64format— String de formato com campos de substituição no estilo Joda.Stringtimezone— Opcional. Nome do fuso horário para a hora formatada.String
String
Exemplos
Formatar datetime usando a sintaxe Joda
Query
Response
fromDaysSinceYearZero
Introduzido em: v23.11.0 Para um determinado número de dias transcorridos desde 1 January 0000, retorna a data correspondente no calendário gregoriano proléptico definido pela ISO 8601. O cálculo é o mesmo da funçãoFROM_DAYS() do MySQL. O resultado é indefinido se não puder ser representado dentro dos limites do tipo Date.
Sintaxe
FROM_DAYS
Argumentos
days— O número de dias transcorridos desde o ano zero.UInt32
Date
Exemplos
Converter dias transcorridos desde o ano zero em datas
Query
Response
fromDaysSinceYearZero32
Introduzido em: v23.11.0 Para um determinado número de dias decorridos desde 1 de janeiro de 0000, retorna a data correspondente no calendário gregoriano proléptico definido pela ISO 8601. O cálculo é o mesmo da funçãoFROM_DAYS() do MySQL. O resultado é indefinido se não puder ser representado nos limites do tipo Date32.
Sintaxe
days— O número de dias decorridos desde o ano zero.UInt32
Date32
Exemplos
Converter dias desde o ano zero em datas
Query
Response
fromModifiedJulianDay
Introduzido em: v21.1.0 Converte um número de Dia Juliano Modificado em uma data do calendário gregoriano proléptico, em formato de textoYYYY-MM-DD. Esta função oferece suporte a números de dia de -678941 a 2973483 (que representam 0000-01-01 e 9999-12-31, respectivamente). Ela gera uma exceção se o número do dia estiver fora do intervalo compatível.
Sintaxe
day— número do Dia Juliano Modificado.(U)Int*
String
Exemplos
Converter Dia Juliano Modificado em data
Query
Response
fromModifiedJulianDayOrNull
Introduzido em: v21.1.0 Semelhante afromModifiedJulianDay(), mas, em vez de lançar exceções, retorna NULL.
Sintaxe
day— número do Dia Juliano Modificado.(U)Int*
day válido; caso contrário, null. Nullable(String)
Exemplos
Converter Dia Juliano Modificado em data com tratamento de null
Query
Response
fromUTCTimestamp
Introduzido em: v22.1.0 Converte um valor de data ou data com hora do fuso horário UTC em um valor de data ou data com hora no fuso horário especificado. Esta função é incluída principalmente para fins de compatibilidade com o Apache Spark e frameworks semelhantes. Sintaxefrom_utc_timestamp
Argumentos
datetime— Um valor constante de data ou data com hora, ou uma expressão.DateTimeouDateTime64time_zone— Um valor constante do tipo String ou uma expressão que representa o fuso horário.String
DateTime ou DateTime64
Exemplos
Converta o fuso horário UTC para o fuso horário especificado
Query
Response
fromUnixTimestamp
Introduzido em: v20.8.0 Esta função converte um timestamp Unix em uma data de calendário e uma hora do dia. Ela pode ser chamada de duas maneiras:- Quando recebe um único argumento do tipo
Integer, retorna um valor do tipoDateTime, ou seja, comporta-se comotoDateTime. - Quando recebe dois ou três argumentos, em que o primeiro argumento é um valor do tipo
Integer,Date,Date32,DateTimeouDateTime64, o segundo argumento é uma string de formato constante e o terceiro argumento é uma string constante de fuso horário opcional, a função retorna um valor do tipoString, ou seja, comporta-se comoformatDateTime. Nesse caso, é usado o estilo de formatação de datetime do MySQL.
FROM_UNIXTIME
Argumentos
timestamp— timestamp Unix ou valor de data/data com hora.(U)Int*ouDateouDate32ouDateTimeouDateTime64format— Opcional. String de formato constante para a formatação de saída.Stringtimezone— Opcional. String constante de fuso horário.String
DateTime a partir do timestamp quando chamada com um argumento, ou uma String quando chamada com dois ou três argumentos. DateTime ou String
Exemplos
Converte um timestamp Unix em DateTime
Query
Response
Query
Response
fromUnixTimestampInJodaSyntax
Introduzido em: v23.1.0 Esta função converte um timestamp Unix em uma data de calendário e uma hora do dia. Ela pode ser chamada de duas maneiras: Quando recebe um único argumento do tipoInteger, retorna um valor do tipo DateTime, ou seja, comporta-se como toDateTime.
Quando recebe dois ou três argumentos, em que o primeiro é um valor do tipo Integer, Date, Date32, DateTime ou DateTime64, o segundo é uma string de formato constante e o terceiro é uma string constante opcional de fuso horário, a função retorna um valor do tipo String, ou seja, comporta-se como formatDateTimeInJodaSyntax. Nesse caso, é usado o estilo de formato de data e hora do Joda.
Sintaxe
timestamp— timestamp Unix ou valor de data/hora.(U)Int*ouDateouDate32ouDateTimeouDateTime64format— Opcional. String de formato constante usando a sintaxe Joda para formatação de saída.Stringtimezone— Opcional. String constante de fuso horário.String
DateTime ou String
Exemplos
Converter timestamp Unix com formato Joda
Query
Response
localtime
Introduzido em: v26.7.0 Retorna a hora atual do dia no fuso horário do servidor (ou da sessão), no momento da análise da consulta. A função é uma expressão constante. É oLOCALTIME padrão do SQL/PostgreSQL e equivale a CAST(now() AS Time).
Esta função é não determinística: pode retornar resultados diferentes para os mesmos argumentos.
- Nenhum.
Time
Exemplos
Sintaxe SQL padrão sem parênteses
Query
Response
makeDate
Introduzido na versão: v22.6.0 Cria umDate a partir de:
- ano, mês e dia
- ano e dia do ano
year— Número do ano.(U)Int*ouFloat*ouDecimalmonth— Número do mês (1-12).(U)Int*ouFloat*ouDecimalday— Dia do mês (1-31).(U)Int*ouFloat*ouDecimalday_of_year— Dia do ano (1-365).(U)Int*ouFloat*ouDecimal
Date criado a partir dos argumentos fornecidos Date
Exemplos
Data a partir de ano, mês e dia
Query
Response
Query
Response
makeDate32
Introduzido na versão: v22.6.0 Cria umDate32 a partir de:
- ano, mês e dia
- ano e dia do ano
year— Número do ano.(U)Int*ouFloat*ouDecimalmonth— Número do mês (1-12).(U)Int*ouFloat*ouDecimalday— Dia do mês (1-31).(U)Int*ouFloat*ouDecimalday_of_year— Dia do ano (1-365).(U)Int*ouFloat*ouDecimal
Date32 construído com os argumentos fornecidos Date32
Exemplos
Date32 a partir de ano, mês e dia
Query
Response
Query
Response
makeDateTime
Introduzido em: v22.6.0 Cria umDateTime a partir do ano, mês, dia, hora, minuto e segundo, com timezone opcional.
Sintaxe
year— Número do ano.(U)Int*ouFloat*ouDecimalmonth— Número do mês (1-12).(U)Int*ouFloat*ouDecimalday— Dia do mês (1-31).(U)Int*ouFloat*ouDecimalhour— Hora (0-23).(U)Int*ouFloat*ouDecimalminute— Minuto (0-59).(U)Int*ouFloat*ouDecimalsecond— Segundo (0-59).(U)Int*ouFloat*ouDecimaltimezone— Nome do fuso horário.String
DateTime construído a partir dos argumentos fornecidos DateTime
Exemplos
DateTime a partir de ano, mês, dia, hora, minuto e segundo
Query
Response
makeDateTime64
Introduzido em: v22.6.0 Cria umDateTime64 a partir de ano, mês, dia, hora, minuto e segundo, com fração, precisão e fuso horário opcionais.
Sintaxe
year— Número do ano.(U)Int*ouFloat*ouDecimalmonth— Número do mês (1-12).(U)Int*ouFloat*ouDecimalday— Dia do mês (1-31).(U)Int*ouFloat*ouDecimalhour— Hora (0-23).(U)Int*ouFloat*ouDecimalminute— Minuto (0-59).(U)Int*ouFloat*ouDecimalsecond— Segundo (0-59).(U)Int*ouFloat*ouDecimalfraction— Parte fracionária do segundo.(U)Int*ouFloat*ouDecimalprecision— Precisão da parte fracionária (0-9).UInt8timezone— Nome do fuso horário.String
DateTime64 construído a partir dos argumentos fornecidos DateTime64
Exemplos
DateTime64 a partir de ano, mês, dia, hora, minuto e segundo
Query
Response
monthName
Introduzido em: v22.1.0 Retorna o nome do mês como uma string a partir de um valor de data ou de data com hora. Sintaxedatetime— Data ou data e hora.DateouDate32ouDateTimeouDateTime64
String
Exemplos
Obter o nome do mês a partir de uma data
Query
Response
now
Introduzido em: v1.1.0 Retorna a data e hora atuais no momento da análise da consulta. A função é uma expressão constante.Esta função não é determinística: pode retornar resultados diferentes para os mesmos argumentos.
localtimestamp, current_timestamp
Argumentos
timezone— Opcional. Nome do fuso horário do valor retornado.String
DateTime
Exemplos
Consulta sem fuso horário
Query
Response
Query
Response
Query
Response
now64
Introduzido em: v20.1.0 Retorna a data e a hora atuais com precisão inferior a segundos no momento da análise da consulta. A função é uma expressão constante.Esta função é não determinística: pode retornar resultados diferentes para os mesmos argumentos.
scale— Opcional. Tamanho do tick (precisão): 10^-precision segundos. Faixa válida: [0 : 9]. Em geral, usam-se 3 (padrão) (milissegundos), 6 (microssegundos) e 9 (nanossegundos).UInt8timezone— Opcional. Nome do fuso horário para o valor retornado.String
DateTime64
Exemplos
Consulta com precisão padrão e personalizada
Query
Response
nowInBlock
Introduzido em: v22.8.0 Retorna a data e a hora atuais no momento em que cada bloco de dados é processado. Ao contrário da funçãonow, não é uma expressão constante, e o valor retornado será diferente entre os blocos em consultas de longa duração.
Faz sentido usar essa função para gerar a hora atual em consultas INSERT SELECT de longa duração.
Esta função é não determinística: ela pode retornar resultados diferentes para os mesmos argumentos.
timezone— Opcional. Nome do fuso horário do valor retornado.String
DateTime
Exemplos
Diferença em relação à função now()
Query
Response
nowInBlock64
Introduzido em: v25.8.0 Retorna a data e a hora atuais no momento do processamento de cada bloco de dados, em milissegundos. Ao contrário da função now64, não é uma expressão constante, e o valor retornado será diferente entre blocos distintos em consultas de longa duração. Faz sentido usar essa função para gerar a hora atual em consultasINSERT SELECT de longa duração.
Esta função é não determinística: pode retornar resultados diferentes para os mesmos argumentos.
scale— Opcional. Tamanho do tick (precisão): 10^-precision segundos. Intervalo válido: [0 : 9]. Normalmente, usam-se 3 (padrão) (milissegundos), 6 (microssegundos) e 9 (nanossegundos).UInt8timezone— Opcional. Nome do fuso horário do valor retornado.String
DateTime64
Exemplos
Diferença em relação à função now64()
Query
Response
serverTimezone
Introduzido em: v23.6.0 Retorna o fuso horário do servidor, ou seja, o valor da configuraçãotimezone.
Se a função for executada no contexto de uma tabela distribuída, ela gerará uma coluna comum com valores correspondentes a cada shard. Caso contrário, produzirá um valor constante.
Esta função é não determinística: pode retornar resultados diferentes para os mesmos argumentos.
serverTimeZone
Argumentos
- Nenhum.
String
Exemplos
Exemplo de uso
Query
Response
subDate
Introduzido em: v23.9.0 Subtrai o intervalo de tempo da data, data e hora ou data, ou data e hora codificada como string, fornecida. Se a subtração resultar em um valor fora dos limites do tipo de dado, o resultado será indefinido. Sintaxedatetime— A data ou data e hora da qualintervalé subtraído.DateouDate32ouDateTimeouDateTime64interval— Intervalo a ser subtraído.Interval
interval de datetime. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Subtrair intervalo de uma data
Query
Response
subtractDays
Introduzido em: v1.1.0 Subtrai um número especificado de dias de uma data, uma data e hora ou uma data, ou data e hora, codificada como string. Sintaxedatetime— Data ou data e hora da qual subtrair o número especificado de dias.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de dias a subtrair.(U)Int*ouFloat*
datetime com num dias subtraídos Date ou Date32 ou DateTime ou DateTime64
Exemplos
Subtrair dias de diferentes tipos de data
Query
Response
Query
Response
subtractHours
Introduzido em: v1.1.0 Subtrai um número especificado de horas de uma data, de uma data e hora ou de uma data ou data e hora representada como string. Sintaxedatetime— Data ou data e hora da qual será subtraído o número especificado de horas.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de horas a subtrair.(U)Int*ouFloat*
datetime menos num horas, DateTime ou DateTime64(3)
Exemplos
Subtrair horas de diferentes tipos de data
Query
Response
Query
Response
subtractInterval
Introduzido em: v22.11.0 Adiciona um intervalo negativo a outro intervalo ou a uma tupla de intervalos. Observação: intervalos do mesmo tipo serão combinados em um único intervalo. Por exemplo, setoIntervalDay(2) e toIntervalDay(1) forem
informados, o resultado será (1) em vez de (2,1).
Sintaxe
interval_1— Primeiro intervalo ou tupla de intervalos.IntervalouTuple(Interval)interval_2— Segundo intervalo a ser negado.Interval
Tuple(T)
Exemplos
Subtração de intervalos
Query
Response
subtractMicroseconds
Introduzido em: v22.6.0 Subtrai um número especificado de microssegundos de uma data e hora ou de uma data e hora codificada como string. Sintaxedatetime— Data com hora da qual será subtraído o número especificado de microssegundos.DateTimeouDateTime64ouStringnum— Número de microssegundos a serem subtraídos.(U)Int*ouFloat*
datetime menos num microssegundos. DateTime64
Exemplos
Subtrair microssegundos de diferentes tipos de data e hora
Query
Response
Query
Response
subtractMilliseconds
Introduzido na versão: v22.6.0 Subtrai um número especificado de milissegundos de uma data e hora ou de uma data e hora codificada como string. Sintaxedatetime— Data e hora da qual será subtraído o número especificado de milissegundos.DateTimeouDateTime64ouStringnum— Número de milissegundos a subtrair.(U)Int*ouFloat*
datetime menos num milissegundos DateTime64
Exemplos
Subtrair milissegundos de diferentes tipos de data e hora
Query
Response
Query
Response
subtractMinutes
Introduzido em: v1.1.0 Subtrai um número especificado de minutos de uma data, de uma data e hora ou de uma data ou data e hora representada como string. Sintaxedatetime— Data ou data e hora da qual será subtraído o número especificado de minutos.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de minutos a subtrair.(U)Int*ouFloat*
datetime com num minutos subtraídos. DateTime ou DateTime64(3)
Exemplos
Subtrair minutos de diferentes tipos de data
Query
Response
Query
Response
subtractMonths
Introduzido em: v1.1.0 Subtrai um número especificado de meses de uma data, de uma data e hora ou de uma data/data e hora codificada como string. Sintaxedatetime— Data ou data e hora da qual será subtraído o número especificado de meses.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de meses a subtrair.(U)Int*ouFloat*
datetime menos num meses. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Subtrair meses de diferentes tipos de data
Query
Response
Query
Response
subtractNanoseconds
Introduzido na versão: v20.1.0 Subtrai um número especificado de nanossegundos de uma data e hora ou de uma data e hora codificada como string. Sintaxedatetime— Data e hora da qual será subtraído o número especificado de nanossegundos.DateTimeouDateTime64ouStringnum— Número de nanossegundos a subtrair.(U)Int*ouFloat*
datetime menos num nanossegundos. DateTime64
Exemplos
Subtrair nanossegundos de diferentes tipos de data e hora
Query
Response
Query
Response
subtractQuarters
Introduzido em: v20.1.0 Subtrai um número especificado de trimestres de uma data, uma data e hora ou uma data ou data e hora codificada como string. Sintaxedatetime— Data ou data e hora da qual o número especificado de trimestres será subtraído.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de trimestres a subtrair.(U)Int*ouFloat*
datetime com num trimestres subtraídos Date ou Date32 ou DateTime ou DateTime64
Exemplos
Subtrair trimestres de diferentes tipos de data
Query
Response
Query
Response
subtractSeconds
Introduzido em: v1.1.0 Subtrai um número especificado de segundos de uma data, uma data e hora ou uma data, ou data e hora, codificada como string. Sintaxedatetime— Data ou data e hora da qual será subtraído o número especificado de segundos.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de segundos a subtrair.(U)Int*ouFloat*
datetime menos num segundos. DateTime ou DateTime64(3)
Exemplos
Subtrair segundos de diferentes tipos de data
Query
Response
Query
Response
subtractTupleOfIntervals
Introduzido em: v22.11.0 Subtrai consecutivamente uma tupla de intervalos de uma data ou de uma data e hora. Sintaxedatetime— Data ou data e hora da qual subtrair intervalos.DateouDate32ouDateTimeouDateTime64intervals— Tupla de intervalos a subtrair dedatetime.Tuple(Interval)
date com os intervals subtraídos. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Subtrair uma tupla de intervalos de uma data
Query
Response
subtractWeeks
Introduzido em: v1.1.0 Subtrai um número especificado de semanas de uma data, uma data e hora ou uma data ou data e hora codificada como string. Sintaxedatetime— Data ou data e hora da qual subtrair o número especificado de semanas.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de semanas a subtrair.(U)Int*ouFloat*
datetime menos num semanas Date ou Date32 ou DateTime ou DateTime64
Exemplos
Subtração de semanas em diferentes tipos de data
Query
Response
Query
Response
subtractYears
Introduzido em: v1.1.0 Subtrai um número específico de anos de uma data, uma data e hora ou uma data, ou data e hora, codificada como string. Sintaxedatetime— Data ou data e hora da qual o número especificado de anos será subtraído.DateouDate32ouDateTimeouDateTime64ouStringnum— Número de anos a subtrair.(U)Int*ouFloat*
datetime menos num anos. Date ou Date32 ou DateTime ou DateTime64
Exemplos
Subtrair anos de diferentes tipos de data
Query
Response
Query
Response
timeDiff
Introduzido em: v23.4.0 Retorna a diferença, em segundos, entre duas datas ou entre duas datas com hora. A diferença é calculada comoenddate - startdate.
Esta função é equivalente a dateDiff('second', startdate, enddate).
Para calcular diferenças de tempo em outras unidades (horas, dias, meses etc.), use a função dateDiff.
Sintaxe
startdate— O primeiro valor de tempo a ser subtraído (o subtraendo).DateouDate32ouDateTimeouDateTime64enddate— O segundo valor de tempo do qual será subtraído o primeiro (o minuendo).DateouDate32ouDateTimeouDateTime64
enddate e startdate, expressa em segundos. Int64
Exemplos
Calcular a diferença de tempo em segundos
Query
Response
Query
Response
Query
Response
timeSlot
Introduzido em: v1.1.0 Arredonda a hora para o início de um intervalo de meia hora.Embora esta função possa receber como argumento valores dos tipos estendidos
Date32 e DateTime64,
passá-la uma data/hora fora do intervalo normal (anos de 1970 a 2149 para Date / 2106 para DateTime) produzirá resultados incorretos.time— Hora a ser arredondada para o início de um intervalo de meia hora.DateTimeouDate32ouDateTime64time_zone— Opcional. Um valor constante do tipo String ou uma expressão que representa o fuso horário.String
DateTime
Exemplos
Arredondar a hora para um intervalo de meia hora
Query
Response
timeSlots
Introduzido em: v1.1.0 Para um intervalo de tempo que começa emStartTime e dura Duration segundos, retorna um Array de instantes, composto por pontos desse intervalo arredondados para baixo em múltiplos de Size segundos. Size é um parâmetro opcional cujo valor padrão é 1800 (30 minutos).
Isso é necessário, por exemplo, ao procurar visualizações de página na sessão correspondente.
Para DateTime64, a escala do valor retornado pode ser diferente da escala de StartTime. É usada a maior escala entre todos os argumentos fornecidos.
Sintaxe
StartTime— Horário de início do intervalo.DateTimeouDateTime64Duration— Duração do intervalo em segundos.UInt32ouDateTime64Size— Opcional. Tamanho dos intervalos de tempo em segundos. O padrão é 1800 (30 minutos).UInt32ouDateTime64
StartTime). Para DateTime64, a escala do valor retornado pode ser diferente da escala de StartTime — é usada a maior escala entre todos os argumentos fornecidos. Array(DateTime) ou Array(DateTime64)
Exemplos
Gerar intervalos de tempo para um intervalo
Query
Response
timestamp
Introduzido em: v23.9.0 Converte o primeiro argumentoexpr para o tipo DateTime64(6).
Se um segundo argumento expr_time for informado, adiciona o horário especificado ao valor convertido.
Sintaxe
expr— Data ou data e hora.Stringexpr_time— Opcional. Horário a ser adicionado ao valor convertido.String
expr ou expr com o horário adicionado DateTime64(6)
Exemplos
Converter string de data em DateTime64(6)
Query
Response
Query
Response
timezone
Introduzido em: v21.4.0 Retorna o nome do fuso horário da sessão atual ou converte um offset ou nome de fuso horário em um nome canônico de fuso horário.Esta função é não determinística: pode retornar resultados diferentes para os mesmos argumentos.
timeZone
Argumentos
- Nenhum.
String
Exemplos
Exemplo de uso
Query
Response
timezoneOf
Introduzido na versão: v21.4.0 Retorna o nome do fuso horário de um valorDateTime ou DateTime64.
Sintaxe
timeZoneOf
Argumentos
datetime— Um valor do tipoDateTimeouDateTime64timezone— Opcional. Nome do fuso horário para o qual converter o valordatetime.String
datetime String
Exemplos
Exemplo de uso
Query
Response
timezoneOffset
Introduzido em: v21.6.0 Retorna o deslocamento do fuso horário em segundos em relação ao UTC. A função leva em conta o horário de verão e alterações históricas no fuso horário na data e hora especificadas. SintaxetimeZoneOffset
Argumentos
datetime— valorDateTimepara obter o deslocamento do fuso horário.DateTimeouDateTime64
Int32
Exemplos
Exemplo de uso
Query
Response
toDayOfMonth
Introduzido em: v1.1.0 Retorna o dia do mês (1-31) de umDate ou DateTime.
Sintaxe
DAY, DAYOFMONTH
Argumentos
datetime— Data ou data e hora da qual se obtém o dia do mês.DateouDate32ouDateTimeouDateTime64
UInt8
Exemplos
Exemplo de uso
Query
Response
toDayOfWeek
Introduzido em: v1.1.0 Retorna o número do dia da semana correspondente a um valorDate ou DateTime.
A forma com dois argumentos de toDayOfWeek() permite especificar se a semana começa na segunda-feira ou no domingo
e se o valor de retorno deve estar no intervalo de 0 a 6 ou de 1 a 7.
Sintaxe
DAYOFWEEK
Argumentos
datetime— Data ou data e hora da qual se obtém o dia da semana.DateouDate32ouDateTimeouDateTime64mode— Opcional. Inteiro que especifica o modo da semana (0–3). O padrão é 0 se for omitido.UInt8timezone— Opcional. Fuso horário a ser usado na conversão.String
Date ou DateTime informado UInt8
Exemplos
Exemplo de uso
Query
Response
toDayOfYear
Introduzido em: v18.4.0 Retorna o número do dia no ano (1-366) de um valorDate ou DateTime.
Sintaxe
DAYOFYEAR
Argumentos
datetime— Data ou data e hora da qual será obtido o dia do ano.DateouDate32ouDateTimeouDateTime64
Date ou DateTime especificada UInt16
Exemplos
Exemplo de uso
Query
Response
toDaysInMonth
Introduzido na versão: v26.3.0 Retorna o número de dias do mês de umDate ou DateTime.
O valor retornado está no intervalo de 28 a 31.
Sintaxe
datetime— Data ou data e hora a partir da qual obter o número de dias no mês.DateorDate32orDateTimeorDateTime64
UInt8
Exemplos
Exemplo de uso
Query
Response
toDaysSinceYearZero
Introduzido em: v23.9.0 Para uma determinada data, retorna o número de dias decorridos desde 1 de janeiro de 0000 no calendário gregoriano proléptico definido pela ISO 8601. O cálculo é o mesmo da funçãoTO_DAYS do MySQL.
Sintaxe
TO_DAYS
Argumentos
date— A data ou data e hora para a qual calcular o número de dias desde o ano zero.DateouDate32ouDateTimeouDateTime64time_zone— Fuso horário.String
0000-01-01. UInt32
Exemplos
Calcular os dias desde o ano zero
Query
Response
toHour
Introduzido em: v1.1.0 Retorna o componente hora (0–23) de um valorDateTime ou DateTime64.
Sintaxe
HOUR
Argumentos
datetime— Data e hora da qual será extraída a hora.DateTimeouDateTime64
datetime. UInt8
Exemplos
Exemplo de uso
Query
Response
toISOWeek
Introduzido em: v20.1.0 Retorna o número da semana ISO de uma data ou de uma data e hora. Esta é uma função de compatibilidade equivalente atoWeek(date, 3).
As semanas ISO começam na segunda-feira, e a primeira semana do ano contém o dia 4 de janeiro.
De acordo com a ISO 8601, os números das semanas estão no intervalo de 1 a 53.
Observe que datas próximas ao início ou ao fim de um ano podem retornar um número de semana do ano anterior ou do ano seguinte. Por exemplo,
29 de dezembro de 2025 retorna a semana 1 porque cai na primeira semana que contém 4 de janeiro de 2026.
Sintaxe
datetime— Data ou data e hora a partir da qual obter o número da semana ISO.DateorDateTimeorDate32orDateTime64timezone— Opcional. Fuso horário.String
UInt8
Exemplos
Obter os números das semanas ISO
Query
Response
Query
Response
toISOYear
Introduzido em: v18.4.0 Converte uma data ou uma data e hora no número do ano ISO. Sintaxedatetime— O valor com data ou com data e hora.DateouDate32ouDateTimeouDateTime64
UInt16
Exemplos
Obter o ano ISO de valores de data
Query
Response
toLastDayOfMonth
Introduzido na versão: v1.1.0 Arredonda uma data ou data e hora para o último dia do mês.O tipo de retorno pode ser configurado pela configuração
enable_extended_results_for_datetime_functions.LAST_DAY
Argumentos
value— A data ou data e hora a ser arredondada para o último dia do mês.DateouDate32ouDateTimeouDateTime64
Date
Exemplos
Arredondar para o último dia do mês
Query
Response
toLastDayOfWeek
Introduzido em: v23.5.0 Arredonda uma data ou data e hora para cima até o sábado ou domingo mais próximo.O tipo de retorno pode ser configurado pela configuração
enable_extended_results_for_datetime_functions.datetime— Uma data ou data e hora para converter.DateouDateTimeouDate32ouDateTime64mode— Determina o primeiro dia da semana, conforme descrito na funçãotoWeek(). O padrão é0.UInt8timezone— Opcional. O fuso horário a ser usado na conversão. Se não for especificado, o fuso horário do servidor será usado.String
Date ou Date32
Exemplos
Arredondar para cima até o sábado ou domingo mais próximo
Query
Response
toMicrosecond
Introduzido em: v25.7.0 Retorna o componente de microssegundos (0-999999) de um valorDateTime64.
Sintaxe
MICROSECOND
Argumentos
datetime— Data e hora da qual extrair o microssegundo.DateTime64
datetime. UInt32
Exemplos
Exemplo de uso
Query
Response
toMillisecond
Introduzido em: v24.2.0 Retorna o componente de milissegundos (0–999) de um valorDateTime ou DateTime64.
Sintaxe
MILLISECOND
Argumentos
datetime— Data com hora da qual obter o milissegundo.DateTimeouDateTime64
datetime. UInt16
Exemplos
Exemplo de uso
Query
Response
toMinute
Introduzido em: v1.1.0 Retorna o componente de minutos (0-59) de um valorDate ou DateTime.
Sintaxe
MINUTE
Argumentos
datetime— Data e hora da qual obter o minuto.DateTimeouDateTime64
datetime. UInt8
Exemplos
Exemplo de uso
Query
Response
toModifiedJulianDay
Introduzido em: v21.1.0 Converte uma data do calendário gregoriano proléptico em formato de textoYYYY-MM-DD em um número de Dia Juliano Modificado, no tipo Int32. Esta função é compatível com datas de 0000-01-01 a 9999-12-31. Ela gera uma exceção se o argumento não puder ser interpretado como uma data ou se a data for inválida.
Sintaxe
date— A data em formato String.StringouFixedString
Int32
Exemplos
Converter data para Dia Juliano Modificado
Query
Response
toModifiedJulianDayOrNull
Introduzido em: v21.1.0 Semelhante atoModifiedJulianDay(), mas, em vez de lançar exceções, retorna NULL.
Sintaxe
date— Data em formato de texto.StringouFixedString
date válido; caso contrário, null. Nullable(Int32)
Exemplos
Converter data para Dia Juliano Modificado com tratamento de null
Query
Response
toMonday
Introduzido em: v1.1.0 Arredonda uma data ou uma data com hora para a segunda-feira da mesma semana. Retorna a data.O tipo de retorno pode ser configurado pela definição de
enable_extended_results_for_datetime_functions.value— Data ou data com hora a ser arredondada para a segunda-feira da semana.DateouDate32ouDateTimeouDateTime64
Date
Exemplos
Arredonde para a segunda-feira da semana
Query
Response
toMonth
Introduzido em: v1.1.0 Retorna o mês (1-12) de um valorDate ou DateTime.
Sintaxe
MONTH
Argumentos
datetime— Data ou data com hora da qual obter o mês.DateouDate32ouDateTimeouDateTime64
UInt8
Exemplos
Exemplo de uso
Query
Response
toMonthNumSinceEpoch
Introduzido em: v25.3.0 Retorna a quantidade de meses decorridos desde 1970 Sintaxedate— Uma data ou data e hora.DateouDateTimeouDateTime64
Query
Response
toNanosecond
Introduzido em: v25.7.0 Retorna o componente de nanossegundos (0-999999999) de um valorDateTime64.
Sintaxe
NANOSECOND
Argumentos
datetime— Data e hora da qual extrair o nanossegundo.DateTime64
datetime. UInt32
Exemplos
Exemplo de uso
Query
Response
toQuarter
Introduzido em: v1.1.0 Retorna o trimestre do ano (1 a 4) de um determinado valorDate ou DateTime.
Sintaxe
QUARTER
Argumentos
datetime— Data ou data com horário da qual obter o trimestre do ano.DateouDate32ouDateTimeouDateTime64
UInt8
Exemplos
Exemplo de uso
Query
Response
toRelativeDayNum
Introduzido na versão: v1.1.0 Converte uma data ou uma data com hora no número de dias decorridos desde um determinado ponto fixo no passado. O ponto exato no tempo é um detalhe de implementação e, portanto, esta função não deve ser usada isoladamente. O principal objetivo da função é calcular a diferença em dias entre duas datas ou duas datas com hora, por exemplo,toRelativeDayNum(dt1) - toRelativeDayNum(dt2).
Sintaxe
date— Data ou data com hora.DateouDateTimeouDateTime64
UInt32
Exemplos
Obter números relativos de dias
Query
Response
toRelativeHourNum
Introduzido em: v1.1.0 Converte uma data ou data com hora em um número de horas decorridas desde um determinado ponto fixo no passado. O ponto exato no tempo é um detalhe de implementação e, portanto, esta função não deve ser usada isoladamente. O principal objetivo da função é calcular a diferença em horas entre duas datas ou datas com hora, por exemplo,toRelativeHourNum(dt1) - toRelativeHourNum(dt2).
Sintaxe
date— Data ou data com horário.DateouDateTimeouDateTime64
UInt32
Exemplos
Obter números relativos de hora
Query
Response
toRelativeMinuteNum
Introduzido em: v1.1.0 Converte uma data ou uma data com hora em um número de minutos decorridos desde um determinado ponto fixo no passado. O ponto exato no tempo é um detalhe de implementação e, portanto, esta função não deve ser usada de forma independente. O principal objetivo da função é calcular a diferença em minutos entre duas datas ou datas com hora, por exemplo,toRelativeMinuteNum(dt1) - toRelativeMinuteNum(dt2).
Sintaxe
date— Data ou data com horário.DateouDateTimeouDateTime64
UInt32
Exemplos
Obter números relativos de minutos
Query
Response
toRelativeMonthNum
Introduzido em: v1.1.0 Converte uma data ou data com hora em um número de meses decorridos desde um determinado ponto fixo no passado. O ponto exato no tempo é um detalhe de implementação e, portanto, esta função não foi projetada para ser usada de forma isolada. O principal objetivo da função é calcular a diferença em meses entre duas datas ou datas com hora, por exemplo,toRelativeMonthNum(dt1) - toRelativeMonthNum(dt2).
Sintaxe
date— Data ou data com horário.DateouDateTimeouDateTime64
UInt32
Exemplos
Obter números relativos do mês
Query
Response
toRelativeQuarterNum
Introduzido em: v1.1.0 Converte uma data ou data e hora no número de trimestres decorridos desde um determinado ponto fixo no passado. O ponto exato no tempo é um detalhe de implementação e, portanto, esta função não deve ser usada isoladamente. O principal objetivo da função é calcular a diferença em trimestres entre duas datas ou valores de data e hora, por exemplo,toRelativeQuarterNum(dt1) - toRelativeQuarterNum(dt2).
Sintaxe
date— Data ou data com horário.DateouDateTimeouDateTime64
UInt32
Exemplos
Obter números relativos de trimestre
Query
Response
toRelativeSecondNum
Introduzido na versão: v1.1.0 Converte uma data ou data com hora em um número de segundos decorridos desde um determinado ponto fixo no passado. O ponto exato no tempo é um detalhe de implementação e, portanto, esta função não deve ser usada de forma independente. O principal objetivo da função é calcular a diferença em segundos entre duas datas ou datas com hora, por exemplo,toRelativeSecondNum(dt1) - toRelativeSecondNum(dt2).
Sintaxe
date— Data ou data com horário.DateouDateTimeouDateTime64
UInt32
Exemplos
Obter números relativos de segundos
Query
Response
toRelativeWeekNum
Introduzido em: v1.1.0 Converte uma data ou data e hora em um número de semanas decorridas desde um determinado ponto fixo no passado. O ponto exato no tempo é um detalhe de implementação e, portanto, esta função não se destina ao uso independente. O principal objetivo da função é calcular a diferença em semanas entre duas datas ou valores de data e hora, por exemplo,toRelativeWeekNum(dt1) - toRelativeWeekNum(dt2).
Sintaxe
date— Data ou data com horário.DateouDateTimeouDateTime64
UInt32
Exemplos
Obter números de semana relativos
Query
Response
toRelativeYearNum
Introduzido na versão: v1.1.0 Converte uma data ou data com horário em um número de anos decorridos desde um determinado ponto fixo no passado. O ponto exato no tempo é um detalhe de implementação e, portanto, esta função não deve ser usada de forma independente. O principal objetivo da função é calcular a diferença em anos entre duas datas ou datas com horário, por exemplo,toRelativeYearNum(dt1) - toRelativeYearNum(dt2).
Sintaxe
date— Data ou data com horário.DateouDateTimeouDateTime64
UInt16
Exemplos
Obter números relativos do ano
Query
Response
toSecond
Introduzido em: v1.1.0 Retorna o componente de segundos (0-59) de um valorDateTime ou DateTime64.
Sintaxe
SECOND
Argumentos
datetime— Data e hora da qual obter o segundo.DateTimeouDateTime64
datetime. UInt8
Exemplos
Exemplo de uso
Query
Response
toStartOfDay
Introduzido em: v1.1.0 Arredonda para baixo uma data com horário até o início do dia.O tipo de retorno pode ser configurado por meio da configuração
enable_extended_results_for_datetime_functions.DateTime ou DateTime64
Exemplos
Arredondar para baixo até o início do dia
Query
Response
toStartOfFifteenMinutes
Introduzido em: v1.1.0 Arredonda a data com horário para baixo até o início do intervalo de quinze minutos.O tipo de retorno pode ser configurado pela configuração
enable_extended_results_for_datetime_functions.datetime— Uma data ou data com horário para arredondar.DateTimeouDateTime64
DateTime ou DateTime64
Exemplos
Exemplo
Query
Response
toStartOfFiveMinutes
Introduzido em: v22.6.0 Arredonda uma data com horário para baixo até o início do intervalo de cinco minutos mais próximo.O tipo de retorno pode ser configurado definindo
enable_extended_results_for_datetime_functions.toStartOfFiveMinute
Argumentos
datetime— Uma data com horário para arredondar.DateTimeouDateTime64
DateTime ou DateTime64
Exemplos
Exemplo
Query
Response
toStartOfHour
Introduzido em: v1.1.0 Arredonda uma data com horário para baixo até o início da hora.O tipo de retorno pode ser configurado por meio da definição de
enable_extended_results_for_datetime_functions.datetime— Uma data com horário a ser arredondada.DateTimeouDateTime64
DateTime ou DateTime64
Exemplos
Arredondar para baixo para o início da hora
Query
Response
toStartOfISOYear
Introduzido em: v1.1.0 Arredonda uma data ou data com horário para o primeiro dia do ano ISO, que pode ser diferente do ano civil. Veja ISO week date.O tipo de retorno pode ser configurado pela configuração
enable_extended_results_for_datetime_functions.value— A data ou data com horário a ser arredondada para o primeiro dia do ano ISO.DateouDate32ouDateTimeouDateTime64
Date
Exemplos
Arredondar para o primeiro dia do ano ISO
Query
Response
toStartOfInterval
Introduzido em: v20.1.0 Esta função generaliza outras funçõestoStartOf*() usando a sintaxe toStartOfInterval(date_or_date_with_time, INTERVAL x unit [, time_zone]).
Por exemplo,
toStartOfInterval(t, INTERVAL 1 YEAR)retorna o mesmo quetoStartOfYear(t),toStartOfInterval(t, INTERVAL 1 MONTH)retorna o mesmo quetoStartOfMonth(t),toStartOfInterval(t, INTERVAL 1 DAY)retorna o mesmo quetoStartOfDay(t),toStartOfInterval(t, INTERVAL 15 MINUTE)retorna o mesmo quetoStartOfFifteenMinutes(t).
Se a unidade
WEEK for especificada, toStartOfInterval assume que as semanas começam na segunda-feira. Observe que esse comportamento é diferente do da função toStartOfWeek, na qual as semanas começam por padrão no domingo.
A segunda sobrecarga emula a função time_bucket() do TimescaleDB e a função date_bin() do PostgreSQL, respectivamente.
Sintaxe
date_bin, time_bucket
Argumentos
value— Valor de data ou data com horário a ser arredondado para baixo.DateouDateTimeouDateTime64x— Número que representa o comprimento do intervalo. -unit— Unidade do intervalo: YEAR, QUARTER, MONTH, WEEK, DAY, HOUR, MINUTE, SECOND, MILLISECOND, MICROSECOND, NANOSECOND. -time_zone— Opcional. Nome do fuso horário como string. -origin— Opcional. Ponto de origem para o cálculo (apenas na segunda sobrecarga).
DateTime
Exemplos
Arredondamento básico de intervalos
Query
Response
Query
Response
toStartOfMicrosecond
Introduzido em: v22.6.0 Arredonda para baixo uma data com horário até o início do microssegundo. Sintaxedatetime— Data e hora.DateTime64timezone— Opcional. Fuso horário do valor retornado. Se não for especificado, a função usa o fuso horário do parâmetrovalue.String
DateTime64
Exemplos
Consulta sem fuso horário
Query
Response
Query
Response
toStartOfMillisecond
Introduzido em: v22.6.0 Arredonda para baixo uma data com horário até o início do milissegundo. Sintaxedatetime— Data e hora.DateTime64timezone— Opcional. Fuso horário do valor retornado. Se não for especificado, a função usa o fuso horário do parâmetrovalue.String
DateTime64
Exemplos
Consulta sem fuso horário
Query
Response
Query
Response
toStartOfMinute
Introduzido em: v1.1.0 Arredonda uma data com horário para o início do minuto.O tipo de retorno pode ser configurado com a definição de
enable_extended_results_for_datetime_functions.datetime— Uma data com horário a ser arredondada.DateTimeouDateTime64
DateTime ou DateTime64
Exemplos
Arredondar para baixo até o início do minuto
Query
Response
toStartOfMonth
Introduzido em: v1.1.0 Arredonda uma data ou data com horário para baixo, até o primeiro dia do mês.O tipo de retorno pode ser configurado pela configuração
enable_extended_results_for_datetime_functions.value— A data ou data com horário a ser arredondada para baixo para o primeiro dia do mês.DateouDate32ouDateTimeouDateTime64
Date
Exemplos
Arredondar para baixo para o primeiro dia do mês
Query
Response
toStartOfNanosecond
Introduzido em: v22.6.0 Arredonda para baixo uma data com horário para o início do nanossegundo. Sintaxedatetime— Data e hora.DateTime64timezone— Opcional. Fuso horário do valor retornado. Se não for especificado, a função usa o fuso horário do parâmetrovalue.String
DateTime64
Exemplos
Consulta sem fuso horário
Query
Response
Query
Response
toStartOfQuarter
Introduzido em: v1.1.0 Arredonda uma data ou data com horário para o primeiro dia do trimestre. O primeiro dia do trimestre é 1º de janeiro, 1º de abril, 1º de julho ou 1º de outubro.O tipo de retorno pode ser configurado por meio da configuração
enable_extended_results_for_datetime_functions.value— A data ou data com horário a ser arredondada para baixo até o primeiro dia do trimestre.DateouDate32ouDateTimeouDateTime64
Date
Exemplos
Arredondar para baixo até o primeiro dia do trimestre
Query
Response
toStartOfSecond
Introduzido em: v20.5.0 Arredonda para baixo uma data com hora até o início do segundo. Sintaxedatetime— Data e hora das quais remover as frações de segundo.DateTime64timezone— Opcional. Fuso horário do valor retornado. Se não for especificado, a função usa o fuso horário do parâmetrovalue.String
DateTime64
Exemplos
Consulta sem fuso horário
Query
Response
Query
Response
toStartOfTenMinutes
Introduzido em: v20.1.0 Arredonda uma data com hora para baixo até o início do intervalo de dez minutos mais próximo.O tipo de retorno pode ser configurado pela configuração
enable_extended_results_for_datetime_functions.datetime— Uma data com hora.DateTimeouDateTime64
DateTime ou DateTime64
Exemplos
Exemplo
Query
Response
toStartOfWeek
Introduzido na versão: v20.1.0 Arredonda uma data ou data com hora para o domingo ou a segunda-feira anteriores mais próximos.O tipo de retorno pode ser configurado com a definição de
enable_extended_results_for_datetime_functions.datetime— Uma data ou data com hora a ser convertida.DateouDateTimeouDate32ouDateTime64mode— Determina o primeiro dia da semana, conforme descrito na funçãotoWeek(). O padrão é0.UInt8timezone— O fuso horário a ser usado na conversão. Se não for especificado, será usado o fuso horário do servidor.String
Date ou Date32
Exemplos
Arredondar para baixo para o domingo ou a segunda-feira mais próximos
Query
Response
toStartOfYear
Introduzido na versão: v1.1.0 Arredonda uma data ou data com hora para o primeiro dia do ano. Retorna a data como um objetoDate.
O tipo de retorno pode ser configurado pela definição de
enable_extended_results_for_datetime_functions.value— A data ou data com hora a ser arredondada para baixo.DateouDate32ouDateTimeouDateTime64
Date
Exemplos
Arredondar para baixo para o primeiro dia do ano
Query
Response
toTimeWithFixedDate
Introduzida em: v25.5.0 Extrai o componente de hora de uma data com hora. O resultado retornado é um deslocamento em relação a um ponto fixo no tempo, atualmente1970-01-02,
mas o ponto exato no tempo é um detalhe de implementação que pode mudar no futuro.
Portanto, toTimeWithFixedDate não deve ser usada isoladamente.
O principal objetivo da função é calcular a diferença de tempo entre duas datas com hora, por exemplo, toTimeWithFixedDate(dt1) - toTimeWithFixedDate(dt2).
Esta é a função legada toTime, renomeada na v25.5 porque o nome toTime agora é usado por
toTime, que converte valores para o
tipo de dados Time.
Ela continua acessível pelo nome antigo toTime quando a configuração
use_legacy_to_time está habilitada (o padrão é 0 desde a v26.7, mas era 1 da v25.6 à v26.6).
Se o argumento datetime tiver componentes inferiores a um segundo, eles serão descartados no valor DateTime retornado, que tem precisão de segundos.
Sintaxe
datetime— Data com hora a serem convertidas em horário.DateTimeouDateTime64timezone— Opcional. Fuso horário do valor retornado.String
DateTime
Exemplos
Calcule a diferença de horário entre duas datas
Query
Response
Query
Response
Query
Response
toTimezone
Introduzido em: v1.1.0 Converte umDateTime ou DateTime64 para o fuso horário especificado.
O valor interno (número de segundos Unix) do dado não muda.
Apenas o atributo de fuso horário do valor e sua representação textual mudam.
Sintaxe
toTimeZone
Argumentos
date— O valor a ser convertido.DateTimeouDateTime64timezone— O nome do fuso horário de destino.String
DateTime ou DateTime64
Exemplos
Exemplo de uso
Query
Response
toUTCTimestamp
Introduzido na versão: v23.8.0 Converte um valor de data ou data com hora de um fuso horário para um timestamp em UTC. Esta função é incluída principalmente para compatibilidade com o Apache Spark e frameworks semelhantes. Sintaxeto_utc_timestamp
Argumentos
datetime— Um valor constante do tipo data ou data com hora, ou uma expressão.DateTimeouDateTime64time_zone— Um valor constante do tipo String ou uma expressão que representa o fuso horário.String
DateTime ou DateTime64
Exemplos
Converter o fuso horário para UTC
Query
Response
toUnixTimestamp
Introduzido na versão: v1.1.0 Converte umaString, Date ou DateTime em um timestamp Unix (segundos desde 1970-01-01 00:00:00 UTC) para UInt32.
Sintaxe
date— Valor a ser convertido.DateouDate32ouDateTimeouDateTime64ouStringtimezone— Opcional. Fuso horário a ser usado na conversão. Se não for especificado, o fuso horário do servidor será usado.String
UInt32
Exemplos
Exemplo de uso
Query
Response
toWeek
Introduzido em: v20.1.0 Esta função retorna o número da semana para uma data ou datetime. A forma com dois argumentos detoWeek() permite especificar se a semana começa
no domingo ou na segunda-feira e se o valor retornado deve ficar no intervalo de 0 a 53 ou de 1 a 53.
toISOWeek() é uma função de compatibilidade equivalente a toWeek(date,3).
A tabela a seguir descreve como o argumento mode funciona.
Para valores de mode com o significado de “com 4 ou mais dias neste ano”, as semanas são numeradas de acordo com a ISO 8601:1988:
- Se a semana que contém 1º de janeiro tiver 4 ou mais dias no novo ano, ela será a semana 1.
- Caso contrário, será a última semana do ano anterior, e a próxima semana será a semana 1.
String em um formato compatível com parseDateTime64BestEffort. O suporte a argumentos string existe apenas por motivos de compatibilidade com o MySQL, como esperado por algumas ferramentas de terceiros. Como o suporte a argumentos string pode, no futuro, passar a depender de novas configurações de compatibilidade com MySQL e como o parsing de strings geralmente é lento, recomenda-se não usá-lo.
Sintaxe
week
Argumentos
datetime— Data ou data com hora da qual obter o número da semana.DateouDateTimemode— Opcional. Um modo de0a9determina o primeiro dia da semana e o intervalo do número da semana. O padrão é0. -time_zone— Opcional. Fuso horário.String
UInt32
Exemplos
Obtenha números de semana com modos diferentes
Query
Response
toYYYYMM
Introduzido em: v1.1.0 Converte uma data ou data com hora em um númeroUInt32 contendo o ano e o número do mês (YYYY * 100 + MM).
Aceita um segundo argumento opcional de fuso horário. Se fornecido, o fuso horário deve ser uma constante de string.
Esta função é o oposto da função YYYYMMDDToDate().
Sintaxe
datetime— Uma data ou data com hora a ser convertida.DateouDate32ouDateTimeouDateTime64timezone— Opcional. Fuso horário para a conversão. Se informado, o fuso horário deve ser uma constante de string.String
UInt32
Exemplos
Converte uma data e hora para o formato YYYYMM em outro fuso horário
Query
Response
toYYYYMMDD
Introduzido em: v1.1.0 Converte uma data ou uma data com hora em um númeroUInt32 que contém o ano, o mês e o dia (YYYY * 10000 + MM * 100 + DD). Aceita um segundo argumento opcional de fuso horário. Se fornecido, o fuso horário deve ser uma constante de string.
Sintaxe
datetime— Uma data ou uma data com hora a ser convertida.DateouDate32ouDateTimeouDateTime64timezone— Opcional. Fuso horário para a conversão. Se informado, o fuso horário deve ser uma constante de string.String
UInt32 que contém o ano, o mês e o dia (YYYY * 10000 + MM * 100 + DD). UInt32
Exemplos
Converter uma data para o formato YYYYMMDD em outro fuso horário
Query
Response
toYYYYMMDDhhmmss
Introduzido em: v1.1.0 Converte uma data ou data com hora em um númeroUInt64 contendo ano, mês, dia, hora, minuto e segundo (YYYY * 10000000000 + MM * 100000000 + DD * 1000000 + hh * 10000 + mm * 100 + ss).
Aceita um segundo argumento opcional de fuso horário. Se fornecido, o fuso horário deve ser uma constante de string.
Sintaxe
datetime— Data ou data com hora a ser convertida.DateouDate32ouDateTimeouDateTime64timezone— Opcional. Fuso horário da conversão. Se informado, o fuso horário deve ser uma constante de string.String
UInt64 contendo o ano, mês, dia, hora, minuto e segundo (YYYY * 10000000000 + MM * 100000000 + DD * 1000000 + hh * 10000 + mm * 100 + ss). UInt64
Exemplos
Converter uma data e hora para o formato YYYYMMDDhhmmss
Query
Response
toYear
Introduzido em: v1.1.0 Retorna o ano (d.C.) de um valorDate ou DateTime.
Sintaxe
YEAR
Argumentos
datetime— Data ou data com hora da qual extrair o ano.DateouDate32ouDateTimeouDateTime64
Date ou DateTime fornecido, como UInt16
Exemplos
Exemplo de uso
Query
Response
toYearNumSinceEpoch
Introduzido em: v25.3.0 Retorna o número de anos decorridos desde 1970 Sintaxedate— Uma data ou uma data com hora para converter.DateouDateTimeouDateTime64
Query
Response
toYearWeek
Introduzido em: v20.1.0 Retorna o ano e a semana de uma data. O ano no resultado pode ser diferente do ano no argumento de data na primeira e na última semana do ano. O argumentomode funciona como o argumento mode de toWeek().
Aviso: O número da semana retornado por toYearWeek() pode ser diferente do que toWeek() retorna. toWeek() sempre retorna o número da semana no contexto do ano informado e, se toWeek() retornar 0, toYearWeek() retornará o valor correspondente à última semana do ano anterior. Veja prev_yearWeek no exemplo abaixo.
O primeiro argumento também pode ser especificado como String, em um formato compatível com parseDateTime64BestEffort. O suporte a argumentos do tipo string existe apenas por motivos de compatibilidade com o MySQL, esperado por certas ferramentas de terceiros. Como esse suporte pode, no futuro, passar a depender de novas configurações de compatibilidade com MySQL e como o parsing de strings geralmente é lento, recomenda-se não usá-lo.
Sintaxe
yearweek
Argumentos
datetime— Data ou data com hora da qual obter o ano e a semana.DateouDateTimemode— Opcional. Um valor de0a9determina o primeiro dia da semana e o intervalo do número da semana. O padrão é0. -timezone— Opcional. Fuso horário.String
UInt32
Exemplos
Obtenha combinações de ano-semana com diferentes modos
Query
Response
today
Introduzido em: v1.1.0 Retorna a data atual no momento da análise da consulta. O mesmo quetoDate(now()).
Esta função é não determinística: pode retornar resultados diferentes para os mesmos argumentos.
current_date, curdate
Argumentos
- Nenhum.
Date
Exemplos
Exemplo de uso
Query
Response
Query
Response
yesterday
Introduzido em: v1.1.0 Aceita zero argumentos e retorna a data de ontem em um dos estágios da análise da consulta.Esta função não é determinística: pode retornar resultados diferentes para os mesmos argumentos.
- Nenhum.
Date
Exemplos
Obter a data de ontem
Query
Response