Problemas comuns na conversão de dados
O ClickHouse geralmente usa o mesmo comportamento dos programas em C++. As funçõesto<type> e cast se comportam de maneira diferente em alguns casos, por exemplo com LowCardinality: cast remove a propriedade LowCardinality, enquanto as funções to<type> não. O mesmo ocorre com Nullable; esse comportamento não é compatível com o padrão SQL e pode ser alterado com a configuração cast_keep_nullable.
Esteja ciente da possível perda de dados ao converter valores de um tipo de dado para um tipo menor (por exemplo, de
Int64 para Int32) ou entre
tipos de dados incompatíveis (por exemplo, de String para Int). Verifique com cuidado se o resultado é o esperado.Observações sobre as funções toString
A família de funções toString permite converter entre números, strings (mas não strings fixas), datas e datas com hora.
Todas essas funções aceitam um argumento.
- Ao converter para string ou de string, o valor é formatado ou interpretado usando as mesmas regras do formato TabSeparated (e de quase todos os outros formatos de texto). Se a string não puder ser interpretada, uma exceção é lançada e a solicitação é cancelada.
- Ao converter datas em números ou vice-versa, a data corresponde ao número de dias desde o início da epoch Unix.
- Ao converter datas com hora em números ou vice-versa, a data com hora corresponde ao número de segundos desde o início da epoch Unix.
- A função
toStringdo argumentoDateTimepode receber um segundo argumento String contendo o nome do fuso horário, por exemplo:Europe/Amsterdam. Nesse caso, a hora é formatada de acordo com o fuso horário especificado.
Observações sobre as funções toDate/toDateTime
Os formatos de data e de data e hora das funções toDate/toDateTime são definidos da seguinte forma:
toDate(unix_timestamp), que, de outra forma, geraria um erro e exigiria a forma mais trabalhosa toDate(toDateTime(unix_timestamp)).
A conversão entre uma data e uma data com hora é feita da forma natural: adicionando uma hora nula ou removendo a hora.
A conversão entre tipos numéricos usa as mesmas regras das atribuições entre diferentes tipos numéricos em C++.
Exemplo
Query
Response
toUnixTimestamp.
CAST
Introduzido em: v1.1.0 Converte um valor para um tipo de dado especificado. Ao contrário da função reinterpret, CAST tenta gerar o mesmo valor no tipo de destino. Se isso não for possível, uma exceção é lançada. SintaxeAny
Exemplos
Uso básico
Query
Response
Query
Response
Query
Response
DATE
Introduzido em: v21.2.0 Converte o argumento para o tipo de dado Date. Este é um alias de compatibilidade com o MySQL paratoDate. Ele se comporta da mesma forma que toDate.
Sintaxe
Date
Exemplos
Uso básico
Query
Response
accurateCast
Introduzido em: v1.1.0 Converte um valor para um tipo de dado especificado. Diferentemente deCAST, accurateCast faz uma verificação de tipos mais rigorosa e lança uma exceção se a conversão resultar em perda de precisão dos dados ou se a conversão não for possível.
Esta função é mais segura do que o CAST padrão, pois evita perda de precisão e conversões inválidas.
Sintaxe
Any
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
accurateCastOrDefault
Introduzido em: v21.1.0 Converte um valor para um tipo de dado especificado. ComoaccurateCast, mas retorna um valor padrão em vez de gerar uma exceção se a conversão não puder ser feita com precisão.
Se um valor padrão for fornecido como segundo argumento, ele deverá ser do tipo de destino.
Se nenhum valor padrão for fornecido, será usado o valor padrão do tipo de destino.
Sintaxe
x— Um valor a ser convertido.AnyT— O nome do tipo de dado de destino.const Stringdefault_value— Opcional. O valor padrão a ser retornado se a conversão falhar.Any
Any
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
Query
Response
accurateCastOrNull
Introduzido em: v1.1.0 Converte um valor para um tipo de dado especificado. ComoaccurateCast, mas retorna NULL em vez de lançar uma exceção se a conversão não puder ser realizada com precisão.
Esta função combina a segurança de accurateCast com um tratamento de erros mais adequado.
Sintaxe
NULL se a conversão não for possível. Any
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
formatRow
Introduzido em: v20.7.0 Converte expressões arbitrárias em uma string usando o formato especificado.Se o formato contiver um sufixo/prefixo, ele será gravado em cada linha.
Somente formatos por linha são compatíveis com esta função.
String
Exemplos
Uso básico
Query
Response
Query
Response
formatRowNoNewline
Introduzido em: v20.7.0 Igual aformatRow, mas remove o caractere de nova linha de cada linha.
Converte expressões arbitrárias em uma string usando o formato especificado, mas remove quaisquer caracteres de nova linha no final do resultado.
Sintaxe
String
Exemplos
Uso básico
Query
Response
fromUnixTimestamp64Micro
Introduzido em: v20.5.0 Converte um timestamp Unix em microssegundos em um valorDateTime64 com precisão de microssegundos.
O valor de entrada é tratado como um timestamp Unix com precisão de microssegundos (número de microssegundos desde 1970-01-01 00:00:00 UTC).
Sintaxe
value— timestamp Unix em microssegundos.Int64timezone— Opcional. Fuso horário do valor retornado.String
DateTime64 com precisão de microssegundos. DateTime64(6)
Exemplos
Exemplo de uso
Query
Response
fromUnixTimestamp64Milli
Introduzido em: v20.5.0 Converte um timestamp Unix em milissegundos em um valorDateTime64 com precisão de milissegundos.
O valor de entrada é tratado como um timestamp Unix com precisão de milissegundos (número de milissegundos desde 1970-01-01 00:00:00 UTC).
Sintaxe
value— timestamp Unix em milissegundos.Int64timezone— Opcional. Fuso horário do valor retornado.String
DateTime64 com precisão de milissegundos. DateTime64(3)
Exemplos
Exemplo de uso
Query
Response
fromUnixTimestamp64Nano
Introduzido em: v20.5.0 Converte um timestamp Unix em nanossegundos em um valorDateTime64 com precisão de nanossegundos.
O valor de entrada é tratado como um timestamp Unix com precisão de nanossegundos (número de nanossegundos desde 1970-01-01 00:00:00 UTC).
Observe que o valor de entrada é tratado como um timestamp em UTC, e não com o fuso horário do valor de entrada.
value— Timestamp Unix em nanossegundos.Int64timezone— Opcional. Fuso horário do valor retornado.String
DateTime64 com precisão de nanossegundos. DateTime64(9)
Exemplos
Exemplo de uso
Query
Response
fromUnixTimestamp64Second
Introduzido em: v24.12.0 Converte um timestamp Unix em segundos em um valorDateTime64 com precisão de segundo.
O valor de entrada é tratado como um timestamp Unix com precisão de segundo (número de segundos desde 1970-01-01 00:00:00 UTC).
Sintaxe
value— timestamp Unix em segundos.Int64timezone— Opcional. Fuso horário do valor retornado.String
DateTime64 com precisão de segundos. DateTime64(0)
Exemplos
Exemplo de uso
Query
Response
kqlParameterCast
Introduzida na: v26.9.0 Verifica um valor em relação a um tipo declarado da Kusto Query Language e o converte para o tipo correspondente do ClickHouse: um argumento cujo tipo não pertence ao tipo KQL declarado é rejeitado durante a análise, e um valor que não couber (um overflow deint, por exemplo) gera um
erro por linha. O segundo argumento é o nome do tipo KQL declarado e o terceiro descreve o
parâmetro para a mensagem de erro; ambos devem ser strings constantes.
Esta função dá suporte a parâmetros de função tipados quando dialect = 'kusto'. Ela não deve ser
chamada diretamente a partir do SQL.
Sintaxe
value— O argumento fornecido por uma chamada de função KQL. -type— O nome do tipo KQL declarado, uma string constante. -parameter— Uma descrição do parâmetro, uma string constante usada na mensagem de erro.
value como o tipo ClickHouse correspondente ao tipo declarado.
Exemplos
long
Query
Response
Query
Response
kqlToTimespan
Introduzida na: v26.8.0 Converte um valor em um intervalo de tempo (umInterval em nanossegundos) da mesma forma que a função
totimespan() da Kusto Query Language: um intervalo de tempo é repassado sem alteração, um número é interpretado como dias e uma string é lida no formato
[-][d.]hh:mm:ss[.fffffff] — retornando NULL quando não é possível interpretá-la.
Esta função dá suporte a totimespan() quando dialect = 'kusto'. Ela não deve ser chamada
diretamente no SQL.
Sintaxe
x— Um intervalo de tempo, um número de dias ou uma string que expressa um intervalo de tempo.
NULL para uma string que não expressa um intervalo de tempo.
Examples
string
Query
Response
Query
Response
parseDateTime
Introduzido em: v23.3.0 Interpreta uma string de data e hora de acordo com uma String de formato de data do MySQL. Esta função é o inverso deformatDateTime.
Ela interpreta um argumento String usando uma String de formato. Retorna um valor do tipo DateTime.
Sintaxe
TO_UNIXTIME
Argumentos
time_string—Stringa ser convertida para DateTime.Stringformat— String de formato que especifica como fazer o parse detime_string.Stringtimezone— Opcional. Fuso horário.String
DateTime
Exemplos
Exemplo de uso
Query
Response
parseDateTime32BestEffort
Introduzido em: v20.9.0 Converte uma representação textual de data e hora para o tipo de dadoDateTime.
A função analisa ISO 8601, RFC 1123 - 5.2.14 RFC-822 Date and Time Specification, os formatos de data e hora do ClickHouse e alguns outros formatos.
Sintaxe
time_string— String contendo uma data e hora a ser convertida.Stringtime_zone— Opcional. Fuso horário segundo o qualtime_stringé interpretadoString
time_string como um DateTime. DateTime
Exemplos
Exemplo de uso
Query
Response
Query
Response
Query
Response
parseDateTime32BestEffortOrNull
Introduzido em: v20.9.0 Igual aparseDateTime32BestEffort, exceto que retorna NULL quando encontra um formato de data que não pode ser processado.
Sintaxe
time_string—Stringque contém uma data e hora a serem convertidas.Stringtime_zone— Opcional. Fuso horário de acordo com o qualtime_stringé interpretado.String
DateTime interpretado a partir da string, ou NULL se a interpretação falhar. DateTime
Exemplos
Exemplo de uso
Query
Response
parseDateTime32BestEffortOrZero
Introduzido em: v20.9.0 Igual aparseDateTime32BestEffort, exceto que retorna uma data zero ou data e hora zero quando encontra um formato de data que não pode ser processado.
Sintaxe
time_string—Stringque contém uma data e hora para converter.Stringtime_zone— Opcional. Fuso horário com base no qualtime_stringé interpretado.String
DateTime interpretado da string ou a data zero (1970-01-01 00:00:00) se a interpretação falhar. DateTime
Exemplos
Exemplo de uso
Query
Response
parseDateTime64
Introduzido em: v24.11.0 Interpreta uma string de data e hora com precisão de subsegundos de acordo com uma string de formato de data do MySQL. Esta função é o inverso deformatDateTime para DateTime64.
Ela interpreta um argumento String usando uma string de formato. Retorna um tipo DateTime64, que pode representar datas de 0000 a 9999 com precisão de subsegundos (precisões altas cobrem um intervalo mais estreito porque o valor é armazenado em um número Int64 de ticks: a precisão 8 alcança cerca de 4892 e a precisão 9 abrange de 1677 a 2262).
Sintaxe
time_string— String a ser convertida em DateTime64.Stringformat— String de formato que especifica como interpretar time_string.Stringtimezone— Opcional. Fuso horário.String
DateTime64
Exemplos
Exemplo de uso
Query
Response
parseDateTime64BestEffort
Introduzido em: v20.1.0 Igual à funçãoparseDateTimeBestEffort, mas também processa milissegundos e microssegundos e retorna o tipo de dado DateTime64.
Sintaxe
time_string—Stringque contém uma data ou data com hora a ser convertida.Stringprecision— Opcional. Precisão requerida.3para milissegundos,6para microssegundos. Padrão:3.UInt8time_zone— Opcional. Fuso horário. A função interpretatime_stringde acordo com o fuso horário.String
time_string convertido para o tipo de dado DateTime64. DateTime64
Exemplos
Exemplo de uso
Query
Response
parseDateTime64BestEffortOrNull
Introduzido em: v20.1.0 Igual aparseDateTime64BestEffort, exceto que retorna NULL quando encontra um formato de data que não pode ser processado.
Sintaxe
time_string—Stringcontendo uma data ou uma data e hora a ser convertida.Stringprecision— Opcional. Precisão necessária.3para milissegundos,6para microssegundos. Padrão:3.UInt8time_zone— Opcional. Fuso horário. A função interpretatime_stringde acordo com o fuso horário.String
time_string convertido para DateTime64, ou NULL se a entrada não puder ser interpretada. DateTime64 ou NULL
Exemplos
Exemplo de uso
Query
Response
parseDateTime64BestEffortOrZero
Introduzido em: v20.1.0 Igual aparseDateTime64BestEffort, exceto pelo fato de retornar data zero ou data e hora zero quando encontra um formato de data que não pode ser processado.
Sintaxe
time_string—Stringcontendo uma data ou data e hora para converter.Stringprecision— Opcional. Precisão necessária.3para milissegundos,6para microssegundos. Padrão:3.UInt8time_zone— Opcional. Fuso horário. A função interpretatime_stringde acordo com o fuso horário.String
time_string convertido para DateTime64, ou data/data e hora zero (1970-01-01 00:00:00.000) se a entrada não puder ser interpretada. DateTime64
Exemplos
Exemplo de uso
Query
Response
parseDateTime64BestEffortUS
Introduzido em: v22.8.0 Igual aparseDateTime64BestEffort, exceto pelo fato de que esta função prioriza o formato de data dos EUA (MM/DD/YYYY etc.) em caso de ambiguidade.
Sintaxe
time_string— String contendo uma data ou data e hora para converter.Stringprecision— Opcional. Precisão necessária.3para milissegundos,6para microssegundos. Padrão:3.UInt8time_zone— Opcional. Fuso horário. A função interpretatime_stringde acordo com o fuso horário.String
time_string convertido para DateTime64, usando a preferência de formato de data dos EUA em casos ambíguos. DateTime64
Exemplos
Exemplo de uso
Query
Response
parseDateTime64BestEffortUSOrNull
Introduzido em: v22.8.0 Igual aparseDateTime64BestEffort, exceto que esta função dá preferência ao formato de data dos EUA (MM/DD/YYYY etc.) em caso de ambiguidade e retorna NULL ao encontrar um formato de data que não pode ser processado.
Sintaxe
time_string—Stringque contém uma data ou uma data com hora a ser convertida.Stringprecision— Opcional. Precisão desejada.3para milissegundos,6para microssegundos. Padrão:3.UInt8time_zone— Opcional. Fuso horário. A função interpretatime_stringde acordo com o fuso horário.String
time_string convertido para DateTime64 seguindo a preferência de formato dos EUA, ou NULL se a entrada não puder ser interpretada. DateTime64 ou NULL
Exemplos
Exemplo de uso
Query
Response
parseDateTime64BestEffortUSOrZero
Introduzido em: v22.8.0 Igual aparseDateTime64BestEffort, exceto que esta função prioriza o formato de data dos EUA (MM/DD/YYYY etc.) em caso de ambiguidade e retorna data zero ou data e hora zero quando encontra um formato de data que não pode ser processado.
Sintaxe
time_string—Stringque contém uma data ou uma data com hora para conversão.Stringprecision— Opcional. Precisão necessária.3para milissegundos,6para microssegundos. Padrão:3.UInt8time_zone— Opcional. Fuso horário. A função analisatime_stringde acordo com o fuso horário.String
time_string convertido para DateTime64 usando a preferência de formato dos EUA, ou data/data e hora zero (1970-01-01 00:00:00.000) se a entrada não puder ser analisada. DateTime64
Exemplos
Exemplo de uso
Query
Response
parseDateTime64InJodaSyntax
Introduzido em: v24.10.0 Converte uma string de data e hora com precisão de frações de segundo de acordo com uma string de formato de data Joda. Esta função é o inverso deformatDateTimeInJodaSyntax para DateTime64.
Ela converte um argumento String usando uma String de formato no estilo Joda. Retorna um tipo DateTime64, que pode representar datas de 0000 a 9999 com precisão de frações de segundo (precisões mais altas cobrem um intervalo mais estreito porque o valor é armazenado em um número Int64 de ticks: a precisão 8 alcança aproximadamente 4892 e a precisão 9 abrange de 1677 a 2262).
Consulte a documentação do Joda Time para os padrões de formato.
Sintaxe
time_string— String a ser analisada em DateTime64.Stringformat— String de formato na sintaxe Joda que especifica como interpretar time_string.Stringtimezone— Opcional. Fuso horário.String
DateTime64
Exemplos
Exemplo de uso
Query
Response
parseDateTime64InJodaSyntaxOrNull
Introduzido em: v24.10.0 Igual aparseDateTime64InJodaSyntax, mas retorna NULL quando encontra um formato de data não analisável.
Sintaxe
time_string— String a ser analisada como DateTime64.Stringformat— String de formato na sintaxe Joda que especifica como analisartime_string.Stringtimezone— Opcional. Fuso horário.String
Nullable(DateTime64)
Exemplos
Exemplo de uso
Query
Response
parseDateTime64InJodaSyntaxOrZero
Introduzido em: v24.10.0 Igual aparseDateTime64InJodaSyntax, mas retorna a data zero quando encontra um formato de data não analisável.
Sintaxe
time_string—Stringa ser analisada em DateTime64.Stringformat— String de formato na sintaxe Joda que especifica como interpretar time_string.Stringtimezone— Opcional. Fuso horário.String
DateTime64
Exemplos
Exemplo de uso
Query
Response
parseDateTime64OrNull
Introduzido em: v24.11.0 Assim comoparseDateTime64, mas retorna NULL quando encontra um formato de data não analisável.
Sintaxe
time_string— String a ser analisada em DateTime64.Stringformat— String de formato que especifica como converter time_string.Stringtimezone— Opcional. Fuso horário.String
Nullable(DateTime64)
Exemplos
Exemplo de uso
Query
Response
parseDateTime64OrZero
Introduzido em: v24.11.0 Igual aparseDateTime64, mas retorna uma data zero quando encontra um formato de data não analisável.
Sintaxe
time_string— String a ser analisada em DateTime64.Stringformat— String de formato que especifica como interpretar time_string.Stringtimezone— Opcional. Fuso horário.String
DateTime64
Exemplos
Exemplo de uso
Query
Response
parseDateTimeBestEffort
Introduzido em: v1.1.0 Converte uma data e hora em representação String para o tipo de dado DateTime. A função interpreta os formatos ISO 8601, RFC 1123 - 5.2.14 RFC-822 Date and Time Specification, os formatos de data e hora do ClickHouse e alguns outros formatos. Formatos não padrão suportados:- Uma string contendo um timestamp Unix de 9..10 dígitos.
- Uma string com um componente de data e hora:
YYYYMMDDhhmmss,DD/MM/YYYY hh:mm:ss,DD-MM-YY hh:mm,YYYY-MM-DD hh:mm:ss, etc. - Uma string com uma data, mas sem componente de hora:
YYYY,YYYYMM,YYYY*MM,DD/MM/YYYY,DD-MM-YYetc. - Uma string com dia e hora:
DD,DD hh,DD hh:mm. Nesse caso,MMé substituído por01. - Uma string que inclui a data e hora junto com informações de deslocamento de fuso horário:
YYYY-MM-DD hh:mm:ss ±h:mm, etc. - Um timestamp de syslog:
Mmm dd hh:mm:ss. Por exemplo,Jun 9 14:20:32.
time_string—Stringque contém uma data e hora a serem convertidas.Stringtime_zone— Opcional. Fuso horário segundo o qualtime_stringé analisado.String
time_string como um DateTime. DateTime
Exemplos
Exemplo de uso
Query
Response
Query
Response
Query
Response
parseDateTimeBestEffortOrNull
Introduzido em: v1.1.0 Igual aparseDateTimeBestEffort, exceto que retorna NULL quando encontra um formato de data que não pode ser processado.
A função analisa ISO 8601, RFC 1123 - 5.2.14 RFC-822 Date and Time Specification, os formatos de data e hora do ClickHouse e alguns outros formatos.
Formatos não padrão compatíveis:
- Uma string contendo um timestamp Unix de 9..10 dígitos.
- Uma string com componentes de data e hora:
YYYYMMDDhhmmss,DD/MM/YYYY hh:mm:ss,DD-MM-YY hh:mm,YYYY-MM-DD hh:mm:ssetc. - Uma string com uma data, mas sem componente de hora:
YYYY,YYYYMM,YYYY*MM,DD/MM/YYYY,DD-MM-YYetc. - Uma string com dia e hora:
DD,DD hh,DD hh:mm. Nesse caso,MMé substituído por01. - Uma string que inclui data e hora junto com informações de deslocamento de fuso horário:
YYYY-MM-DD hh:mm:ss ±h:mmetc. - Um timestamp de syslog:
Mmm dd hh:mm:ss. Por exemplo,Jun 9 14:20:32.
time_string—Stringque contém uma data e hora a ser convertida.Stringtime_zone— Opcional. Fuso horário segundo o qualtime_stringé analisado.String
time_string como DateTime, ou NULL se a entrada não puder ser analisada. DateTime ou NULL
Exemplos
Exemplo de uso
Query
Response
parseDateTimeBestEffortOrZero
Introduzido em: v1.1.0 Igual aparseDateTimeBestEffort, exceto pelo fato de retornar uma data zero ou data e hora zero quando encontra um formato de data que não pode ser processado.
A função analisa ISO 8601, RFC 1123 - 5.2.14 RFC-822 Date and Time Specification, os formatos de data e hora do ClickHouse e alguns outros formatos.
Formatos não padrão compatíveis:
- Uma string contendo um timestamp Unix de 9 a 10 dígitos.
- Uma string com um componente de data e hora:
YYYYMMDDhhmmss,DD/MM/YYYY hh:mm:ss,DD-MM-YY hh:mm,YYYY-MM-DD hh:mm:ssetc. - Uma string com uma data, mas sem componente de hora:
YYYY,YYYYMM,YYYY*MM,DD/MM/YYYY,DD-MM-YYetc. - Uma string com um dia e hora:
DD,DD hh,DD hh:mm. Nesse caso,MMé substituído por01. - Uma string que inclui a data e a hora junto com informações de deslocamento de fuso horário:
YYYY-MM-DD hh:mm:ss ±h:mmetc. - Um timestamp de syslog:
Mmm dd hh:mm:ss. Por exemplo,Jun 9 14:20:32.
time_string—Stringcontendo uma data e hora a serem convertidas.Stringtime_zone— Opcional. Fuso horário segundo o qualtime_stringé analisado.String
time_string como um DateTime ou data/DateTime zero (1970-01-01 ou 1970-01-01 00:00:00) se a entrada não puder ser analisada. DateTime
Exemplos
Exemplo de uso
Query
Response
parseDateTimeBestEffortUS
Introduzido em: v1.1.0 Esta função se comporta comoparseDateTimeBestEffort para formatos de data ISO, por exemplo, YYYY-MM-DD hh:mm:ss, e outros formatos de data em que os componentes de mês e dia podem ser extraídos sem ambiguidade, por exemplo, YYYYMMDDhhmmss, YYYY-MM, DD hh ou YYYY-MM-DD hh:mm:ss ±h:mm.
Se os componentes de mês e dia não puderem ser extraídos sem ambiguidade, por exemplo, MM/DD/YYYY, MM-DD-YYYY ou MM-DD-YY, ela prefere o formato de data dos EUA em vez de DD/MM/YYYY, DD-MM-YYYY ou DD-MM-YY.
Como exceção ao caso anterior, se o mês for maior que 12 e menor ou igual a 31, esta função retorna ao comportamento de parseDateTimeBestEffort; por exemplo, 15/08/2020 é interpretado como 2020-08-15.
Sintaxe
time_string—Stringque contém uma data e hora para converter.Stringtime_zone— Opcional. Fuso horário de acordo com o qualtime_stringé interpretado.String
time_string como um DateTime, usando a preferência do formato de data dos EUA em casos ambíguos. DateTime
Exemplos
Exemplo de uso
Query
Response
parseDateTimeBestEffortUSOrNull
Introduzido em: v1.1.0 Igual à funçãoparseDateTimeBestEffortUS, exceto que retorna NULL quando encontra um formato de data que não pode ser processado.
Esta função se comporta como parseDateTimeBestEffort para formatos de data ISO, mas, em casos ambíguos, prefere o formato de data dos EUA e retorna NULL em caso de erros de parsing.
Sintaxe
time_string— String que contém uma data e hora a serem convertidas.Stringtime_zone— Opcional. Fuso horário segundo o qualtime_stringé interpretado.String
time_string como um DateTime, com preferência pelo formato dos EUA, ou NULL se a entrada não puder ser interpretada. DateTime ou NULL
Exemplos
Exemplo de uso
Query
Response
parseDateTimeBestEffortUSOrZero
Introduzido em: v1.1.0 Igual à funçãoparseDateTimeBestEffortUS, exceto que retorna data zero (1970-01-01) ou data zero com hora (1970-01-01 00:00:00) ao encontrar um formato de data que não pode ser processado.
Esta função se comporta como parseDateTimeBestEffort para formatos de data ISO, mas prefere o formato de data dos EUA em casos ambíguos, retornando zero em caso de erro de parsing.
Sintaxe
time_string—Stringque contém uma data e hora para converter.Stringtime_zone— Opcional. Fuso horário segundo o qualtime_stringé interpretado.String
time_string como DateTime, usando a preferência de formato dos EUA, ou a data zero/data e hora zero (1970-01-01 ou 1970-01-01 00:00:00) se a entrada não puder ser interpretada. DateTime
Exemplos
Exemplo de uso
Query
Response
parseDateTimeInJodaSyntax
Introduzido em: v23.3.0 Faz o parse de uma string de data e hora de acordo com uma string de formato de data do Joda. Esta função é o inverso deformatDateTimeInJodaSyntax.
Ela faz o parse de um argumento String usando uma String de formato no estilo Joda. Retorna um tipo DateTime.
Consulte a documentação do Joda Time para os padrões de formato.
Sintaxe
time_string— String a ser convertida em DateTime.Stringformat— String de formato na sintaxe Joda que especifica como analisar time_string.Stringtimezone— Opcional. Fuso horário.String
DateTime
Exemplos
Exemplo de uso
Query
Response
parseDateTimeInJodaSyntaxOrNull
Introduzido em: v23.3.0 Igual aparseDateTimeInJodaSyntax, mas retorna NULL quando encontra um formato de data não analisável.
Sintaxe
time_string— String a ser convertida em DateTime.Stringformat— String de formato na sintaxe Joda que especifica como interpretar time_string.Stringtimezone— Opcional. Fuso horário.String
Nullable(DateTime)
Exemplos
Exemplo de uso
Query
Response
parseDateTimeInJodaSyntaxOrZero
Introduzido em: v23.3.0 Igual aparseDateTimeInJodaSyntax, mas retorna a data zero quando encontra um formato de data não analisável.
Sintaxe
time_string— String a ser convertida em DateTime.Stringformat— String de formato na sintaxe Joda que especifica como interpretar time_string.Stringtimezone— Opcional. Fuso horário.String
DateTime
Exemplos
Exemplo de uso
Query
Response
parseDateTimeOrNull
Introduzido em: v23.3.0 Igual aparseDateTime, mas retorna NULL quando encontra um formato de data não analisável.
Sintaxe
str_to_date
Argumentos
time_string— String a ser convertida em DateTime.Stringformat— String de formato que especifica como interpretar time_string.Stringtimezone— Opcional. Fuso horário.String
Nullable(DateTime)
Exemplos
Exemplo de uso
Query
Response
parseDateTimeOrZero
Introduzido em: v23.3.0 Igual aparseDateTime, mas retorna a data zero quando encontra um formato de data não analisável.
Sintaxe
time_string— String a ser convertida em DateTime.Stringformat— String de formato que especifica como interpretar time_string.Stringtimezone— Opcional. Fuso horário.String
DateTime
Exemplos
Exemplo de uso
Query
Response
reinterpret
Introduzido em: v1.1.0 Usa a mesma sequência de bytes na memória de origem para o valorx fornecido e a reinterpreta como o tipo de destino.
Quando o tipo de destino é String, um Array de origem só tem suporte se o tipo de seus elementos for de tamanho fixo e contíguo na memória (por exemplo, Array(UInt8) ou Array(FixedString(2))); os bytes dos elementos são copiados literalmente em sua ordem nativa na memória, de modo que o resultado possa ser reinterpretado de volta para o tipo Array original em qualquer arquitetura. Arrays cujos elementos sejam de comprimento variável (por exemplo, Array(String)) ou Nullable (por exemplo, Array(Nullable(Int32))) não têm suporte.
Sintaxe
x— Valor a ser reinterpretado. Ao reinterpretar paraString, umArrayde origem deve ter elementos contíguos de tamanho fixo.Anytype— Tipo de destino. Se for um Array, o tipo de elemento do Array deverá ser de comprimento fixo.String
Any
Exemplos
Exemplo de uso
Query
Response
Query
Response
Query
Response
reinterpretAsDate
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor Date (assumindo a ordem little endian), que é o número de dias desde o início da epoch Unix em 1970-01-01 Sintaxex— Número de dias desde o início da epoch Unix.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
Date
Exemplos
Exemplo de uso
Query
Response
reinterpretAsDateTime
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor DateTime (assumindo a ordem little endian), que representa o número de dias desde o início da epoch Unix, em 1970-01-01 Sintaxex— Número de segundos desde o início do epoch Unix.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
DateTime
Exemplos
Exemplo de uso
Query
Response
reinterpretAsFixedString
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como uma string de tamanho fixo (assumindo a ordem little endian). Os bytes nulos no final são ignorados; por exemplo, para o valor UInt32 255, a função retorna uma string com um único caractere. Sintaxex. FixedString
Exemplos
Exemplo de uso
Query
Response
reinterpretAsFloat32
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo Float32. Ao contrário deCAST, a função não tenta preservar o valor original — se o tipo de destino não for capaz de representar o tipo de entrada, o resultado será indefinido.
Sintaxe
x— Valor a ser reinterpretado como Float32.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x. Float32
Exemplos
Exemplo de uso
Query
Response
reinterpretAsFloat64
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo Float64. Ao contrário deCAST, a função não tenta preservar o valor original — se o tipo de destino não conseguir representar o tipo de entrada, o resultado será indefinido.
Sintaxe
x— Valor a ser reinterpretado como Float64.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x. Float64
Exemplos
Exemplo de uso
Query
Response
reinterpretAsInt128
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo Int128. Diferentemente deCAST, a função não tenta preservar o valor original — se o tipo de destino não for capaz de representar o tipo de entrada, o resultado será indefinido.
Sintaxe
x— Valor a ser reinterpretado como Int128.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x. Int128
Exemplos
Exemplo de uso
Query
Response
reinterpretAsInt16
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo Int16. Ao contrário deCAST, a função não tenta preservar o valor original — se o tipo de destino não conseguir representar o tipo de entrada, a saída será indefinida.
Sintaxe
x— Valor a ser reinterpretado como Int16.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x reinterpretado. Int16
Exemplos
Exemplo de uso
Query
Response
reinterpretAsInt256
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo Int256. Ao contrário deCAST, a função não tenta preservar o valor original — se o tipo de destino não conseguir representar o tipo de entrada, o resultado será indefinido.
Sintaxe
x— Valor a ser reinterpretado como Int256.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x reinterpretado. Int256
Exemplos
Exemplo de uso
Query
Response
reinterpretAsInt32
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo Int32. Ao contrário deCAST, a função não tenta preservar o valor original — se o tipo de destino não puder representar o tipo de entrada, a saída será indefinida.
Sintaxe
x— Valor a ser reinterpretado como Int32.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x. Int32
Exemplos
Exemplo de uso
Query
Response
reinterpretAsInt64
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo Int64. Diferentemente deCAST, a função não tenta preservar o valor original — se o tipo de destino não conseguir representar o tipo de entrada, o resultado é indefinido.
Sintaxe
x— Valor a ser reinterpretado como Int64.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x reinterpretado. Int64
Exemplos
Exemplo de uso
Query
Response
reinterpretAsInt8
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo Int8. Ao contrário deCAST, a função não tenta preservar o valor original; se o tipo de destino não conseguir representar o tipo de entrada, a saída será indefinida.
Sintaxe
x— Valor a ser reinterpretado como Int8.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x reinterpretado. Int8
Exemplos
Exemplo de uso
Query
Response
reinterpretAsString
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como uma string. Para valores escalares, a ordem dos bytes é normalizada para little-endian, e os bytes nulos no final são ignorados; por exemplo, para o valor UInt32 255, a função retorna uma string com um único caractere. Para umArray de elementos de tamanho fixo, os bytes dos elementos são copiados literalmente em sua ordem nativa na memória, sem remover bytes zero à direita e sem normalizar para little-endian, de modo que o resultado possa ser reinterpretado de volta para o tipo Array original em qualquer arquitetura.
Sintaxe
x. String
Exemplos
Exemplo de uso
Query
Response
Query
Response
reinterpretAsUInt128
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo UInt128. Ao contrário deCAST, a função não tenta preservar o valor original — se o tipo de destino não puder representar o tipo de entrada, o resultado será indefinido.
Sintaxe
x— Valor a ser reinterpretado como UInt128.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x. UInt128
Exemplos
Exemplo de uso
Query
Response
reinterpretAsUInt16
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo UInt16. Ao contrário deCAST, a função não tenta preservar o valor original — se o tipo de destino não for capaz de representar o tipo de entrada, a saída será indefinida.
Sintaxe
x— Valor a ser reinterpretado como UInt16.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x. UInt16
Exemplos
Exemplo de uso
Query
Response
reinterpretAsUInt256
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo UInt256. Diferentemente deCAST, a função não tenta preservar o valor original — se o tipo de destino não conseguir representar o tipo de entrada, a saída será indefinida.
Sintaxe
x— Valor a ser reinterpretado como UInt256.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x reinterpretado. UInt256
Exemplos
Exemplo de uso
Query
Response
reinterpretAsUInt32
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo UInt32. Diferentemente deCAST, a função não tenta preservar o valor original — se o tipo de destino não conseguir representar o tipo de entrada, a saída será indefinida.
Sintaxe
x— Valor a reinterpretar como UInt32.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x reinterpretado. UInt32
Exemplos
Exemplo de uso
Query
Response
reinterpretAsUInt64
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo UInt64. Ao contrário deCAST, a função não tenta preservar o valor original — se o tipo de destino não for capaz de representar o tipo de entrada, a saída será indefinida.
Sintaxe
x— Valor a ser reinterpretado como UInt64.Int*ouUInt*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x. UInt64
Exemplos
Exemplo de uso
Query
Response
reinterpretAsUInt8
Introduzido em: v1.1.0 Reinterpreta o valor de entrada como um valor do tipo UInt8. Diferentemente deCAST, a função não tenta preservar o valor original — se o tipo de destino não puder representar o tipo de entrada, a saída será indefinida.
Sintaxe
x— Valor a ser reinterpretado como UInt8.(U)Int*ouFloat*ouDateouDateTimeouUUIDouStringouFixedString
x. UInt8
Exemplos
Exemplo de uso
Query
Response
reinterpretAsUUID
Introduzido em: v1.1.0 Aceita uma string de 16 bytes e retorna um UUID, interpretando cada metade de 8 bytes na ordem de bytes little-endian. Se a string não for longa o suficiente, a função se comporta como se ela fosse preenchida no final com a quantidade necessária de bytes nulos. Se a string tiver mais de 16 bytes, os bytes extras no final serão ignorados. Sintaxefixed_string— Cadeia de bytes em big-endian.FixedString
UUID
Exemplos
De string para UUID
Query
Response
toBFloat16
Introduzido na versão: v1.1.0 Converte um valor de entrada em um valor do tipo BFloat16. Lança uma exceção em caso de erro. Veja também: Sintaxeexpr— Expressão que retorna um número ou a representação textual de um número.Expression
brain-float de 16 bits. BFloat16
Exemplos
Exemplo de uso
Query
Response
toBFloat16OrNull
Introduzido em: v1.1.0 Converte um valor de entrada do tipo String em um valor do tipo BFloat16. Se a string não representar um valor de ponto flutuante, a função retorna NULL. Argumentos compatíveis:- Representações em String de valores numéricos.
NULL):
- Representações em String de valores binários e hexadecimais.
- Valores numéricos.
A função permite perda silenciosa de precisão ao converter a representação em String.
x— Uma representação emStringde um número.String
NULL. BFloat16 ou NULL
Exemplos
Exemplo de uso
Query
Response
toBFloat16OrZero
Introduzido em: v1.1.0 Converte um valor de entrada String em um valor do tipo BFloat16. Se a string não representar um valor de ponto flutuante, a função retorna zero. Argumentos suportados:- Representações String de valores numéricos.
0):
- Representações String de valores binários e hexadecimais.
- Valores numéricos.
A função permite perda silenciosa de precisão ao converter a partir da representação String.
x— Uma representação em string de um número.String
0. BFloat16
Exemplos
Exemplo de uso
Query
Response
toBool
Introduzido em: v22.2.0 Converte um valor de entrada em um valor do tipo Bool. Sintaxeexpr— Expressão que retorna um número ou uma string. Para strings, aceita ‘true’ ou ‘false’ (sem distinção entre maiúsculas e minúsculas).(U)Int*ouFloat*ouStringouExpression
true ou false com base na avaliação do argumento. Bool
Exemplos
Exemplo de uso
Query
Response
toDate
Introduzido em: v1.1.0 Converte um valor de entrada para o tipoDate.
É compatível com a conversão de String, FixedString, DateTime ou tipos numéricos.
Sintaxe
x— Valor de entrada a ser convertido.StringouFixedStringouDateTimeou(U)Int*ouFloat*
Date
Exemplos
Conversão de String para Date
Query
Response
Query
Response
Query
Response
toDate32
Introduzido em: v21.9.0 Converte o argumento para o tipo de dado Date32. Se o valor estiver fora do intervalo[0000-01-01, 9999-12-31], toDate32 retorna os valores de limite suportados por Date32.
Se o argumento for do tipo Date, seus limites serão considerados.
Sintaxe
Date32
Exemplos
No intervalo
Query
Response
Query
Response
toDate32OrDefault
Introduzido em: v21.11.0 Converte o argumento para o tipo de dado Date32. Se o argumento não puder ser convertido, incluindo um valor numérico fora do intervalo de Date32, a função retornará um valor padrão, que será o segundo argumento (se especificado) ou, caso contrário,1900-01-01, o valor padrão histórico de Date32 (e não seu limite inferior, que é 0000-01-01). Se o argumento for do tipo Date, os limites desse tipo serão levados em consideração.
Observe que, diferentemente de toDate32, esta função não satura um argumento numérico fora do intervalo para os limites de Date32; esse argumento é tratado como não conversível.
Sintaxe
expr— Expressão que retorna um número ou a representação textual de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se a análise não for bem-sucedida.Date32
Date32
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
Query
Response
toDate32OrNull
Introduzido em: v21.9.0 Converte um valor de entrada em um valor do tipo Date32, mas retornaNULL se receber um argumento inválido.
Igual a toDate32, mas retorna NULL se receber um argumento inválido.
Sintaxe
x— Uma representação textual de uma data.String
Date32 em caso de sucesso; caso contrário, NULL. Date32 ou NULL
Exemplos
Exemplo de uso
Query
Response
toDate32OrZero
Introduzido em: v21.9.0 Converte um valor de entrada em um valor do tipo Date32, mas retorna o valor padrão1900-01-01 se receber um argumento inválido.
É igual a toDate32, mas retorna 1900-01-01 se receber um argumento inválido.
Observe que 1900-01-01 é um valor padrão histórico para entradas inválidas, não o limite inferior de Date32, que é 0000-01-01.
Veja também:
Sintaxe
x— Uma representação textual de uma data.String
Date32 em caso de sucesso; caso contrário, o valor padrão histórico para entrada inválida (1900-01-01). Date32
Exemplos
Exemplo de uso
Query
Response
toDateOrDefault
Introduzido em: v21.11.0 Assim como toDate, mas, em caso de falha, retorna um valor padrão, que é o segundo argumento (se especificado) ou, caso contrário, o limite inferior de Date. Sintaxeexpr— Expressão que retorna um número ou a representação textual de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se o parsing não for bem-sucedido.Date
Date
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toDateOrNull
Introduzido na versão: v1.1.0 Converte um valor de entrada em um valor do tipoDate, mas retorna NULL se receber um argumento inválido.
É o mesmo que toDate, mas retorna NULL se receber um argumento inválido.
Um argumento inteiro é interpretado da mesma forma que em toDate (como um número de dias desde 1970-01-01 se não exceder 65535; caso contrário, como um timestamp Unix) e produz NULL se estiver fora do intervalo do tipo Date.
Sintaxe
x— Uma representação textual de uma data, ou um número inteiro de dias ou um timestamp Unix.Stringou(U)Int8/16/32/64
Date em caso de sucesso; caso contrário, NULL. Date ou NULL
Exemplos
Exemplo de uso
Query
Response
toDateOrZero
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipoDate, mas retorna o limite inferior de Date caso receba um argumento inválido.
É o mesmo que toDate, mas retorna o limite inferior de Date caso receba um argumento inválido.
Veja também:
Sintaxe
x— Uma representação textual de uma data.String
1970-01-01). Date
Exemplos
Exemplo de uso
Query
Response
toDateTime
Introduzido em: v1.1.0 Converte um valor de entrada para o tipo DateTime.Se
expr for um número, ele será interpretado como o número de segundos desde o início da epoch Unix (como timestamp Unix).
Se expr for uma String, ela poderá ser interpretada como um timestamp Unix ou como uma representação em string de data / data com hora.
Assim, o parsing de representações em string de números curtos (até 4 dígitos) é explicitamente desabilitado devido à ambiguidade; por exemplo, uma string '1999' pode ser tanto um ano (uma representação em string incompleta de Date / DateTime) quanto um timestamp Unix. Strings numéricas mais longas são permitidas.expr for um valor Time ou Time64, ele será interpretado como o número de segundos desde o início da epoch Unix: a parte fracionária de um Time64 é arredondada em direção ao infinito negativo, e valores fora do intervalo de DateTime seguem a configuração date_time_overflow_behavior.
Sintaxe
expr— O valor.StringouIntouDateouDate32ouTimeouTime64ouDateTimeouDateTime64time_zone— Fuso horário.String
DateTime
Exemplos
Exemplo de uso
Query
Response
toDateTime32
Introduzido em: v20.9.0 Converte um valor de entrada para o tipoDateTime.
Oferece suporte à conversão de String, FixedString, Date, Date32, Time, Time64, DateTime, DateTime64 ou tipos numéricos ((U)Int8, (U)Int16, (U)Int32, (U)Int64, (U)Int128, (U)Int256, BFloat16, Float32, Float64). Não há suporte para valores Decimal, que resultam em uma exceção.
DateTime32 é um alias de DateTime e oferece suporte a datas de 1970-01-01 00:00:00 a 2106-02-07 06:28:15.
Ao converter uma string ou um dos tipos numéricos saturáveis listados acima, valores fora desse intervalo são saturados nos limites do intervalo. Valores de ponto flutuante não finitos (NaN, inf, -inf) não podem ser convertidos e resultam em uma exceção.
Conversões de outros tipos de data e hora, como Date32, DateTime64, Time ou Time64, seguem a configuração date_time_overflow_behavior: o modo padrão ignore pode gerar valores com wraparound, saturate os limita aos limites do intervalo e throw lança uma exceção. Valores Time64 são primeiro arredondados para baixo, em direção ao infinito negativo, para segundos inteiros.
Sintaxe
x— Valor de entrada a converter.StringouFixedStringou(U)Int*ouFloat*ouBFloat16ouDateouDate32ouTimeouTime64ouDateTimeouDateTime64timezone— Opcional. Fuso horário do valorDateTimeretornado.String
DateTime
Exemplos
De uma string
Query
Response
Query
Response
Query
Response
toDateTime64
Introduzido na: v20.1.0 Converte um valor de entrada em um valor do tipoDateTime64.
Sintaxe
expr— Expressão que retorna um número ou uma representação textual de um número.Expressionscale— Tamanho do tick (precisão): 10^(-scale) segundos.UInt8timezone— Opcional. Fuso horário do objetoDateTime64especificado.String
DateTime64
Exemplos
O valor está dentro do intervalo
Query
Response
Query
Response
Query
Response
toDateTime64OrDefault
Introduzido em: v21.11.0 Assim como toDateTime64, esta função converte um valor de entrada em um valor do tipo DateTime64, mas retorna o valor padrão de DateTime64 ou o valor padrão fornecido caso receba um argumento inválido. Sintaxeexpr— Expressão que retorna um número ou uma representação textual de um número.Stringou(U)Int*ouFloat*scale— Tamanho do tick (precisão): 10^-precisão segundos.UInt8timezone— Opcional. Fuso horário.Stringdefault— Opcional. O valor padrão a ser retornado se o parsing falhar.DateTime64
DateTime64
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toDateTime64OrNull
Introduzido em: v20.1.0 Converte um valor de entrada para o tipoDateTime64, mas retorna NULL se receber um argumento inválido.
Igual a toDateTime64, mas retorna NULL se receber um argumento inválido.
Um argumento inteiro é interpretado como um timestamp Unix em segundos inteiros e retorna NULL se estiver fora do intervalo do tipo DateTime64.
Sintaxe
x— Uma representação textual de uma data e hora com precisão de frações de segundo, ou um timestamp Unix inteiro.Stringou(U)Int8/16/32/64precision— Opcional. A precisão de frações de segundo do valor retornado.UInt8timezone— Opcional. Fuso horário do valor retornado.String
DateTime64 em caso de sucesso; caso contrário, NULL. DateTime64 ou NULL
Exemplos
Exemplo de uso
Query
Response
toDateTime64OrZero
Introduzido em: v20.1.0 Converte um valor de entrada em um valor do tipo DateTime64, mas retorna o valor zero de DateTime64 (a epoch Unix,1970-01-01 00:00:00) se receber um argumento inválido.
Igual a toDateTime64, mas retorna o valor zero de DateTime64 se receber um argumento inválido.
Veja também:
Sintaxe
x— Uma representação textual de uma data com hora e precisão de frações de segundo.Stringprecision— Opcional. A precisão de frações de segundo do valor retornado.UInt8timezone— Opcional. O fuso horário do valor retornado.String
1970-01-01 00:00:00) na precisão solicitada. DateTime64
Exemplos
Exemplo de uso
Query
Response
toDateTimeOrDefault
Introduzido em: v21.11.0 Semelhante a toDateTime, mas, se não for bem-sucedido, retorna um valor padrão, que é o terceiro argumento (se especificado) ou, caso contrário, o limite inferior de DateTime. Sintaxeexpr— Expressão que retorna um número ou a representação em string de um número.Stringou(U)Int*ouFloat*timezone— Opcional. Fuso horário.Stringdefault— Opcional. O valor padrão a ser retornado se não for possível fazer o parsing.DateTime
DateTime
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toDateTimeOrNull
Introduzido na versão: v1.1.0 Converte um valor de entrada em um valor do tipoDateTime, mas retorna NULL se receber um argumento inválido.
O mesmo que toDateTime, mas retorna NULL se receber um argumento inválido.
Um argumento inteiro é interpretado como um timestamp Unix e retorna NULL se estiver fora do intervalo do tipo DateTime.
Sintaxe
x— Uma representação textual de uma data com hora ou um timestamp Unix inteiro.Stringou(U)Int8/16/32/64timezone— Opcional. Fuso horário do valor retornado.String
DateTime em caso de sucesso; caso contrário, NULL. DateTime ou NULL
Exemplos
Exemplo de uso
Query
Response
Query
Response
toDateTimeOrZero
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipo DateTime, mas retorna o limite inferior de DateTime se receber um argumento inválido. É igual a toDateTime, mas retorna o limite inferior de DateTime se receber um argumento inválido. Sintaxex— Uma representação textual de uma data e hora.String
1970-01-01 00:00:00). DateTime
Exemplos
Exemplo de uso
Query
Response
toDecimal128
Introduzido em: v18.12.0 Converte um valor de entrada em um valor do tipoDecimal(38, S) com escala S.
Lança uma exceção em caso de erro.
Argumentos compatíveis:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
- Valores ou representações em string de valores Float*
NaNeInf(sem distinção entre maiúsculas e minúsculas). - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toDecimal128('0xc0fe', 1);.
Pode ocorrer overflow se o valor de
expr exceder os limites de Decimal128: (-1*10^(38 - S), 1*10^(38 - S)).
Dígitos excedentes na parte fracionária são descartados (não arredondados).
Dígitos excedentes na parte inteira resultarão em uma exceção.expr— Expressão que retorna um número ou a representação textual de um número.ExpressionS— Parâmetro de escala entre 0 e 38, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
Decimal(38, S) Decimal128(S)
Exemplos
Exemplo de uso
Query
Response
toDecimal128OrDefault
Introduzido em: v21.11.0 Assim comotoDecimal128, esta função converte um valor de entrada para um valor do tipo Decimal(38, S), mas retorna o valor padrão em caso de erro.
Sintaxe
expr— Uma representação textual de um número.StringS— Parâmetro de escala entre 0 e 38, especificando quantos dígitos a parte fracionária de um número pode ter.UInt8default— Opcional. O valor padrão a ser retornado se a conversão para o tipo Decimal128(S) não for bem-sucedida.Decimal128(S)
Decimal128(S)
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toDecimal128OrNull
Introduzido em: v20.1.0 Converte um valor de entrada em um valor do tipoDecimal(38, S), mas retorna NULL em caso de erro.
Como toDecimal128, mas retorna NULL em vez de lançar uma exceção em erros de conversão.
Argumentos aceitos:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
NULL):
- Valores ou representações em string de valores Float*
NaNeInf(sem distinção entre maiúsculas e minúsculas). - Representações em string de valores binários e hexadecimais.
- Valores que excedem os limites de
Decimal128:(-1*10^(38 - S), 1*10^(38 - S)).
expr— Expressão que retorna um número ou a representação textual de um número.ExpressionS— Parâmetro de escala entre 0 e 38, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
NULL. Decimal128(S) ou NULL
Exemplos
Exemplo de uso
Query
Response
toDecimal128OrZero
Introduzido em: v20.1.0 Converte um valor de entrada em um valor do tipo Decimal(38, S), mas retorna0 em caso de erro.
É como toDecimal128, mas retorna 0 em vez de lançar uma exceção em caso de erro de conversão.
Argumentos compatíveis:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
0):
- Valores ou representações em string de valores Float*
NaNeInf(sem diferenciar maiúsculas de minúsculas). - Representações em string de valores binários e hexadecimais.
Se o valor de entrada exceder os limites de
Decimal128:(-1*10^(38 - S), 1*10^(38 - S)), a função retornará 0.expr— Expressão que retorna um número ou a representação textual de um número.ExpressionS— Parâmetro de escala entre 0 e 38, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
Decimal(38, S) em caso de sucesso; caso contrário, 0. Decimal128(S)
Exemplos
Uso básico
Query
Response
toDecimal256
Introduzido em: v20.8.0 Converte um valor de entrada em um valor do tipoDecimal(76, S) com escala S. Gera uma exceção em caso de erro.
Argumentos aceitos:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
- Valores ou representações em string dos valores Float*
NaNeInf(sem diferenciar maiúsculas de minúsculas). - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toDecimal256('0xc0fe', 1);.
Pode ocorrer overflow se o valor de
expr exceder os limites de Decimal256:(-1*10^(76 - S), 1*10^(76 - S)).
Dígitos excedentes na parte fracionária são descartados (não arredondados).
Dígitos excedentes na parte inteira gerarão uma exceção.expr— Expressão que retorna um número ou a representação em string de um número.ExpressionS— Parâmetro de escala entre 0 e 76, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
Decimal(76, S). Decimal256(S)
Exemplos
Exemplo de uso
Query
Response
toDecimal256OrDefault
Introduzido em: v21.11.0 Assim comotoDecimal256, esta função converte um valor de entrada em um valor do tipo Decimal(76, S), mas retorna o valor padrão em caso de erro.
Sintaxe
expr— Uma representação de um número emString.StringS— Parâmetro de escala entre 0 e 76, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8default— Opcional. O valor padrão a ser retornado se a conversão para o tipo Decimal256(S) falhar.Decimal256(S)
Decimal256(S)
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toDecimal256OrNull
Introduzido em: v20.8.0 Converte um valor de entrada em um valor do tipoDecimal(76, S), mas retorna NULL em caso de erro.
É semelhante a toDecimal256, mas retorna NULL em vez de gerar uma exceção em caso de erro de conversão.
Argumentos suportados:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
NULL):
- Valores ou representações em string de valores Float*
NaNeInf(sem diferenciar maiúsculas de minúsculas). - Representações em string de valores binários e hexadecimais.
- Valores que excedem os limites de
Decimal256:(-1 * 10^(76 - S), 1 * 10^(76 - S)).
expr— Expressão que retorna um número ou a representação textual de um número.ExpressionS— Parâmetro de escala entre 0 e 76, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
Decimal(76, S) em caso de sucesso; caso contrário, NULL. Decimal256(S) ou NULL
Exemplos
Exemplo de uso
Query
Response
toDecimal256OrZero
Introduzido em: v20.8.0 Converte um valor de entrada em um valor do tipo Decimal(76, S), mas retorna0 em caso de erro.
Como toDecimal256, mas retorna 0 em vez de lançar uma exceção em erros de conversão.
Argumentos aceitos:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
0):
- Valores ou representações em string de valores Float*
NaNeInf(sem diferenciar maiúsculas de minúsculas). - Representações em string de valores binários e hexadecimais.
Se o valor de entrada exceder os limites de
Decimal256:(-1*10^(76 - S), 1*10^(76 - S)), a função retorna 0.expr— Expressão que retorna um número ou a representação em string de um número.ExpressionS— Parâmetro de escala entre 0 e 76, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
0. Decimal256(S)
Exemplos
Exemplo de uso
Query
Response
toDecimal32
Introduzido em: v18.12.0 Converte um valor de entrada para o tipoDecimal(9, S) com escala S. Lança uma exceção em caso de erro.
Argumentos com suporte:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
- Valores ou representações em string dos valores Float*
NaNeInf(sem diferenciar maiúsculas de minúsculas). - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toDecimal32('0xc0fe', 1);.
Pode haver overflow se o valor de
expr exceder os limites de Decimal32:(-1*10^(9 - S), 1*10^(9 - S)).
Dígitos excedentes na parte fracionária são descartados (não arredondados).
Dígitos excedentes na parte inteira causarão uma exceção.expr— Expressão que retorna um número ou a representação em string de um número.ExpressionS— Parâmetro de escala entre 0 e 9, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
Decimal(9, S) Decimal32(S)
Exemplos
Exemplo de uso
Query
Response
toDecimal32OrDefault
Introduzido em: v21.11.0 Assim comotoDecimal32, esta função converte um valor de entrada em um valor do tipo Decimal(9, S), mas retorna o valor padrão em caso de erro.
Sintaxe
expr— Uma representação em string de um número.StringS— Parâmetro de escala entre 0 e 9, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8default— Opcional. O valor padrão a ser retornado se a conversão para o tipo Decimal32(S) não for bem-sucedida.Decimal32(S)
Decimal32(S)
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toDecimal32OrNull
Introduzido em: v20.1.0 Converte um valor de entrada em um valor do tipoDecimal(9, S), mas retorna NULL em caso de erro.
Assim como toDecimal32, mas retorna NULL em vez de lançar uma exceção em caso de erro de conversão.
Argumentos aceitos:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
NULL):
- Valores ou representações em string de valores Float*
NaNeInf(sem diferenciar maiúsculas de minúsculas). - Representações em string de valores binários e hexadecimais.
- Valores que excedem os limites de
Decimal32:(-1*10^(9 - S), 1*10^(9 - S)).
expr— Expressão que retorna um número ou uma representação textual de um número.ExpressãoS— Parâmetro de escala entre 0 e 9, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
NULL. Decimal32(S) ou NULL
Exemplos
Exemplo de uso
Query
Response
toDecimal32OrZero
Introduzido em: v20.1.0 Converte um valor de entrada em um valor do tipo Decimal(9, S), mas retorna0 em caso de erro.
Semelhante a toDecimal32, mas retorna 0 em vez de lançar uma exceção em erros de conversão.
Argumentos compatíveis:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
0):
- Valores ou representações em string de valores
NaNeInfdo tipo Float* (sem diferenciar maiúsculas de minúsculas). - Representações em string de valores binários e hexadecimais.
Se o valor de entrada exceder os limites de
Decimal32:(-1*10^(9 - S), 1*10^(9 - S)), a função retorna 0.expr— Expressão que retorna um número ou a representação textual de um número.ExpressãoS— Parâmetro de escala entre 0 e 9, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
Decimal(9, S) em caso de sucesso; caso contrário, 0. Decimal32(S)
Exemplos
Exemplo de uso
Query
Response
toDecimal64
Introduzido em: v18.12.0 Converte um valor de entrada em um valor do tipoDecimal(18, S), com escala S.
Lança uma exceção em caso de erro.
Argumentos aceitos:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
- Valores ou representações em string dos valores Float*
NaNeInf(sem diferenciar maiúsculas de minúsculas). - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toDecimal64('0xc0fe', 1);.
Pode ocorrer overflow se o valor de
expr exceder os limites de Decimal64:(-1*10^(18 - S), 1*10^(18 - S)).
Dígitos em excesso na parte fracionária são descartados (não arredondados).
Dígitos em excesso na parte inteira causarão uma exceção.expr— Expressão que retorna um número ou a representação em string de um número.ExpressãoS— Parâmetro de escala entre 0 e 18, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
Decimal(18, S)
Exemplos
Exemplo de uso
Query
Response
toDecimal64OrDefault
Introduzido em: v21.11.0 Assim comotoDecimal64, esta função converte um valor de entrada em um valor do tipo Decimal(18, S), mas retorna o valor padrão em caso de erro.
Sintaxe
expr— Uma representação em string de um número.StringS— Parâmetro de escala entre 0 e 18, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8default— Opcional. O valor padrão a ser retornado caso a conversão para o tipo Decimal64(S) falhe.Decimal64(S)
Decimal64(S)
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toDecimal64OrNull
Introduzido em: v20.1.0 Converte um valor de entrada em um valor do tipo Decimal(18, S), mas retornaNULL em caso de erro.
Como toDecimal64, mas retorna NULL em vez de lançar uma exceção em erros de conversão.
Argumentos suportados:
- Valores ou representações em string do tipo (U)Int*.
- Valores ou representações em string do tipo Float*.
NULL):
- Valores ou representações em string de valores Float*
NaNeInf(sem diferenciar maiúsculas de minúsculas). - Representações em string de valores binários e hexadecimais.
- Valores que excedem os limites de
Decimal64:(-1*10^(18 - S), 1*10^(18 - S)).
expr— Expressão que retorna um número ou a representação textual de um número.ExpressãoS— Parâmetro de escala entre 0 e 18, especificando quantos dígitos a parte fracionária de um número pode ter.UInt8
NULL. Decimal64(S) ou NULL
Exemplos
Exemplo de uso
Query
Response
toDecimal64OrZero
Introduzido em: v20.1.0 Converte um valor de entrada para um valor do tipo Decimal(18, S), mas retorna0 em caso de erro.
Semelhante a toDecimal64, mas retorna 0 em vez de lançar uma exceção quando ocorrem erros de conversão.
Argumentos suportados:
- Valores ou representações textuais do tipo (U)Int*.
- Valores ou representações textuais do tipo Float*.
0):
- Valores ou representações textuais de valores Float*
NaNeInf(sem distinguir maiúsculas de minúsculas). - Representações textuais de valores binários e hexadecimais.
Se o valor de entrada exceder os limites de
Decimal64:(-1*10^(18 - S), 1*10^(18 - S)), a função retorna 0.expr— Expressão que retorna um número ou a representação em string de um número.ExpressãoS— Parâmetro de escala entre 0 e 18, que especifica quantos dígitos a parte fracionária de um número pode ter.UInt8
Decimal(18, S) em caso de sucesso; caso contrário, 0. Decimal64(S)
Exemplos
Exemplo de uso
Query
Response
toDecimalString
Introduzido em: v23.3.0 Converte um valor numérico para uma String com o número especificado de dígitos fracionários. A função arredonda o valor de entrada para o número especificado de casas decimais. Se o valor de entrada tiver menos dígitos fracionários do que o solicitado, o resultado será preenchido com zeros para atingir exatamente o número de dígitos fracionários especificado. Sintaxenumber— O valor numérico a ser convertido em uma String. Pode ser qualquer tipo numérico (Int, UInt, Float, Decimal).Int8ouInt16ouInt32ouInt64ouUInt8ouUInt16ouUInt32ouUInt64ouFloat32ouFloat64ouDecimalscale— O número de dígitos a serem exibidos na parte fracionária. O resultado será arredondado, se necessário.UInt8
String
Exemplos
Arredondar e formatar um número
Query
Response
Query
Response
Query
Response
toFixedString
Introduzido em: v1.1.0 Converte um argumentoString em um tipo FixedString(N) (uma string com comprimento fixo N).
Se a string tiver menos bytes do que N, ela será preenchida com bytes nulos à direita.
Se a string tiver mais bytes do que N, uma exceção será gerada.
Sintaxe
s—Stringa ser convertida.StringN— Comprimento daFixedStringresultante.const UInt*
FixedString de comprimento N. FixedString(N)
Exemplos
Exemplo de uso
Query
Response
toFloat32
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipo Float32. Lança uma exceção em caso de erro. Argumentos suportados:- Valores do tipo (U)Int*.
- Representações em string de (U)Int8/16/32/128/256.
- Valores do tipo Float*, incluindo
NaNeInf. - Representações em string de Float*, incluindo
NaNeInf(sem diferenciar maiúsculas de minúsculas).
- Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toFloat32('0xc0fe');.
expr— Expressão que retorna um número ou uma representação em string de um número.Expressão
Float32
Exemplos
Exemplo de uso
Query
Response
toFloat32OrDefault
Introduzido em: v21.11.0 Assim comotoFloat32, esta função converte um valor de entrada em um valor do tipo Float32, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou a representação em string de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se a análise não for bem-sucedida.Float32
Float32
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toFloat32OrNull
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipo Float32, mas retornaNULL em caso de erro.
Semelhante a toFloat32, mas retorna NULL em vez de lançar uma exceção em caso de erro de conversão.
Argumentos suportados:
- Valores do tipo (U)Int*.
- Representações em string de (U)Int8/16/32/128/256.
- Valores do tipo Float*, incluindo
NaNeInf. - Representações em string de Float*, incluindo
NaNeInf(sem diferenciar maiúsculas de minúsculas).
NULL):
- Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toFloat32OrNull('0xc0fe');. - Formatos de string inválidos.
x— A representação em string de um número.String
Float32 em caso de sucesso; caso contrário, NULL. Float32 ou NULL
Exemplos
Exemplo de uso
Query
Response
toFloat32OrZero
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipo Float32, mas retorna0 em caso de erro.
Semelhante a toFloat32, mas retorna 0 em vez de gerar uma exceção em caso de erro de conversão.
Veja também:
Sintaxe
x— Uma representação textual de um número.String
Float32 em caso de sucesso; caso contrário, 0. Float32
Exemplos
Exemplo de uso
Query
Response
toFloat64
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipoFloat64.
Lança uma exceção em caso de erro.
Argumentos aceitos:
- Valores do tipo (U)Int*.
- Representações em string de (U)Int8/16/32/128/256.
- Valores do tipo Float*, incluindo
NaNeInf. - Representações em string do tipo Float*, incluindo
NaNeInf(não diferencia maiúsculas de minúsculas).
- Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toFloat64('0xc0fe');.
expr— Expressão que retorna um número ou uma representação textual de um número.Expression
Float64
Exemplos
Exemplo de uso
Query
Response
toFloat64OrDefault
Introduzido em: v21.11.0 Assim comotoFloat64, esta função converte um valor de entrada em um valor do tipo Float64, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou uma representação textual de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se a conversão não for bem-sucedida.Float64
Float64
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toFloat64OrNull
Introduzido em: v1.1.0 Converte um valor de entrada para o tipo Float64, mas retornaNULL em caso de erro.
Como toFloat64, mas retorna NULL em vez de lançar uma exceção em erros de conversão.
Argumentos suportados:
- Valores do tipo (U)Int*.
- Representações em string de (U)Int8/16/32/128/256.
- Valores do tipo Float*, incluindo
NaNeInf. - Representações em string do tipo Float*, incluindo
NaNeInf(sem diferenciar maiúsculas de minúsculas).
NULL):
- Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toFloat64OrNull('0xc0fe');. - Formatos de string inválidos.
x— Uma representação textual de um número.String
Float64 em caso de sucesso; caso contrário, NULL. Float64 ou NULL
Exemplos
Exemplo de uso
Query
Response
toFloat64OrZero
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipo Float64, mas retorna0 em caso de erro.
Semelhante a toFloat64, mas retorna 0 em vez de lançar uma exceção em caso de erro de conversão.
Veja também:
Sintaxe
x— A representação textual de um número.String
Float64 em caso de sucesso; caso contrário, 0. Float64
Exemplos
Exemplo de uso
Query
Response
toInt128
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipo Int128. Lança uma exceção em caso de erro. A função usa arredondamento em direção a zero, ou seja, trunca os dígitos fracionários dos números. Argumentos compatíveis:- Valores ou representações em string do tipo (U)Int*.
- Valores do tipo Float*.
- Representações em string de valores do tipo Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt128('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int128, o resultado sofrerá overflow ou underflow.
Isso não é considerado um erro.
expr— Expressão que retorna um número ou a representação textual de um número.Expression
Int128
Exemplos
Exemplo de uso
Query
Response
toInt128OrDefault
Introduzido em: v21.11.0 Assim comotoInt128, esta função converte um valor de entrada em um valor do tipo Int128, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for fornecido, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou uma representação textual de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se a análise falhar.Int128
Int128
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toInt128OrNull
Introduzido em: v20.8.0 Assim comotoInt128, esta função converte um valor de entrada em um valor do tipo Int128, mas retorna NULL em caso de erro.
Argumentos aceitos:
- Representações de string de (U)Int*.
NULL):
- Representações de string de valores Float*, incluindo
NaNeInf. - Representações de string de valores binários e hexadecimais, por exemplo,
SELECT toInt128OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int128, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.
x— Uma representação textual de um número.String
NULL se a conversão não for bem-sucedida. Int128 ou NULL
Exemplos
Exemplo de uso
Query
Response
toInt128OrZero
Introduzido em: v20.8.0 Converte um valor de entrada para o tipo Int128, mas retorna0 em caso de erro.
Semelhante a toInt128, mas retorna 0 em vez de gerar uma exceção.
Veja também:
Sintaxe
x— Valor de entrada a ser convertido.StringouFixedStringouFloat*ouDecimalou(U)Int*ouDateouDateTime
0 se a conversão falhar. Int128
Exemplos
Exemplo de uso
Query
Response
Query
Response
toInt16
Introduzido em: v1.1.0 Converte um valor de entrada para um valor do tipoInt16.
Lança uma exceção em caso de erro.
Argumentos suportados:
- Valores ou representações em string do tipo (U)Int*.
- Valores do tipo Float*.
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt16('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int16, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.
Por exemplo:
SELECT toInt16(32768) == -32768;.A função usa arredondamento em direção a zero, ou seja, trunca os dígitos fracionários dos números.
expr— Expressão que retorna um número ou a representação textual de um número.Expression
Int16
Exemplos
Exemplo de uso
Query
Response
toInt16OrDefault
Introduzido em: v21.11.0 Assim comotoInt16, esta função converte um valor de entrada em um valor do tipo Int16, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou uma representação textual de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se a conversão não for bem-sucedida.Int16
Int16
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toInt16OrNull
Introduzido em: v1.1.0 Assim comotoInt16, esta função converte um valor de entrada para um valor do tipo Int16, mas retorna NULL em caso de erro.
Argumentos compatíveis:
- Representações em string de (U)Int*.
NULL):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt16OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int16, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.
x— Uma representação emStringde um número.String
Int16 ou NULL, caso a conversão não seja bem-sucedida. Int16 ou NULL
Exemplos
Exemplo de uso
Query
Response
toInt16OrZero
Introduzido em: v1.1.0 Assim comotoInt16, esta função converte um valor de entrada em um valor do tipo Int16, mas retorna 0 em caso de erro.
Argumentos compatíveis:
- Representações em string de (U)Int*.
0):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt16OrZero('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int16, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.
x— A representação textual de um número em String.String
0, se a conversão falhar. Int16
Exemplos
Exemplo de uso
Query
Response
toInt256
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipo Int256. Lança uma exceção em caso de erro. A função usa arredondamento em direção a zero, ou seja, trunca os dígitos fracionários dos números. Argumentos suportados:- Valores ou representações em string do tipo (U)Int*.
- Valores do tipo Float*.
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt256('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int256, o resultado terá overflow ou underflow.
Isso não é considerado um erro.
expr— Expressão que retorna um número ou a representação em string de um número.Expressão
Int256
Exemplos
Exemplo de uso
Query
Response
toInt256OrDefault
Introduzido em: v21.11.0 Assim comotoInt256, esta função converte um valor de entrada em um valor do tipo Int256, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou uma representação em string de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se a interpretação não for bem-sucedida.Int256
Int256
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toInt256OrNull
Introduzido em: v20.8.0 Assim comotoInt256, esta função converte um valor de entrada em um valor do tipo Int256, mas retorna NULL em caso de erro.
Argumentos suportados:
- representações em string de (U)Int*.
NULL):
- representações em string de valores Float*, incluindo
NaNeInf. - representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt256OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int256, ocorrerá overflow ou underflow do resultado.
Isso não é considerado um erro.
x— A representação em string de um número.String
NULL. Int256 ou NULL
Exemplos
Exemplo de uso
Query
Response
toInt256OrZero
Introduzido em: v20.8.0 Converte um valor de entrada para o tipo Int256, mas retorna0 em caso de erro.
Semelhante a toInt256, mas retorna 0 em vez de gerar uma exceção.
Veja também:
Sintaxe
x— Valor de entrada a ser convertido.StringouFixedStringouFloat*ouDecimalou(U)Int*ouDateouDateTime
0. Int256
Exemplos
Exemplo de uso
Query
Response
Query
Response
toInt32
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipoInt32.
Lança uma exceção em caso de erro.
Argumentos compatíveis:
- Valores ou representações em string do tipo (U)Int*.
- Valores do tipo Float*.
- representações em string de valores Float*, incluindo
NaNeInf. - representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt32('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int32, o resultado sofrerá overflow ou underflow.
Isso não é considerado um erro.
Por exemplo:
SELECT toInt32(2147483648) == -2147483648;A função usa arredondamento em direção a zero, o que significa que ela trunca os dígitos fracionários dos números.
expr— Expressão que retorna um número ou uma representação textual de um número.Expressão
Int32
Exemplos
Exemplo de uso
Query
Response
toInt32OrDefault
Introduzido em: v21.11.0 Assim comotoInt32, esta função converte um valor de entrada em um valor do tipo Int32, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou a representação em string de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se o parsing não for bem-sucedido.Int32
Int32
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toInt32OrNull
Introduzido em: v1.1.0 Assim comotoInt32, esta função converte um valor de entrada em um valor do tipo Int32, mas retorna NULL em caso de erro.
Argumentos aceitos:
- Representações em string de (U)Int*.
NULL):
- representações em string de valores Float*, incluindo
NaNeInf. - representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt32OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int32, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.
x— A representação emStringde um número.String
NULL, caso a conversão não seja bem-sucedida. Int32 ou NULL
Exemplos
Exemplo de uso
Query
Response
toInt32OrZero
Introduzido em: v1.1.0 Assim comotoInt32, esta função converte um valor de entrada em um valor do tipo Int32, mas retorna 0 em caso de erro.
Argumentos aceitos:
- Representações em string de (U)Int*.
0):
- representações em string de valores Float*, incluindo
NaNeInf. - representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt32OrZero('0xc0fe');.
Se o valor de entrada não puder ser representado nos limites de Int32, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.
x— Uma representação em string de um número.String
0. Int32
Exemplos
Exemplo de uso
Query
Response
toInt64
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipoInt64.
Lança uma exceção em caso de erro.
Argumentos compatíveis:
- Valores ou representações em string do tipo (U)Int*.
- Valores do tipo Float*.
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo:
SELECT toInt64('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int64, o resultado terá overflow ou underflow.
Isso não é considerado um erro.
Por exemplo:
SELECT toInt64(9223372036854775808) == -9223372036854775808;A função usa arredondamento em direção a zero, ou seja, trunca os dígitos fracionários dos números.
expr— Expressão que retorna um número ou a representação em string de um número. Compatível com: valores ou representações em string do tipo (U)Int*; valores do tipo Float*. Não compatível com: representações em string de valores Float*, incluindo NaN e Inf; representações em string de valores binários e hexadecimais.Expressão
Int64
Exemplos
Exemplo de uso
Query
Response
toInt64OrDefault
Introduzido em: v21.11.0 Assim comotoInt64, esta função converte um valor de entrada em um valor do tipo Int64, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou a representação textual de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se o parsing falhar.Int64
Int64
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toInt64OrNull
Introduzido em: v1.1.0 Assim comotoInt64, esta função converte um valor de entrada em um valor do tipo Int64, mas retorna NULL em caso de erro.
Argumentos suportados:
- Representações em string de (U)Int*.
NULL):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt64OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int64, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.
x— A representação em string de um número.String
NULL se a conversão não for bem-sucedida. Int64 ou NULL
Exemplos
Exemplo de uso
Query
Response
toInt64OrZero
Introduzido em: v1.1.0 Converte um valor de entrada para o tipo Int64, mas retorna0 em caso de erro.
Semelhante a toInt64, mas retorna 0 em vez de lançar uma exceção.
Veja também:
Sintaxe
x— Valor de entrada a ser convertido.StringouFixedStringouFloat*ouDecimalou(U)Int*ouDateouDateTime
0 se a conversão falhar. Int64
Exemplos
Exemplo de uso
Query
Response
Query
Response
toInt8
Introduzido em: v1.1.0 Converte um valor de entrada para o tipoInt8.
Lança uma exceção em caso de erro.
Argumentos compatíveis:
- Valores ou representações em string do tipo (U)Int*.
- Valores do tipo Float*.
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt8('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int8, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.
Por exemplo:
SELECT toInt8(128) == -128;.A função usa arredondamento em direção a zero, ou seja, trunca os dígitos fracionários dos números.
expr— Expressão que retorna um número ou a representação textual de um número.Expressão
Int8
Exemplos
Exemplo de uso
Query
Response
toInt8OrDefault
Introduzido em: v21.11.0 Assim comotoInt8, esta função converte um valor de entrada em um valor do tipo Int8, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou a representação em string de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se o parsing não for bem-sucedido.Int8
Int8
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toInt8OrNull
Introduzido em: v1.1.0 Assim comotoInt8, esta função converte um valor de entrada em um valor do tipo Int8, mas retorna NULL em caso de erro.
Argumentos suportados:
- Representações de string de (U)Int*.
NULL):
- Representações de string de valores Float*, incluindo
NaNeInf. - Representações de string de valores binários e hexadecimais, por exemplo,
SELECT toInt8OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int8, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.
x— Uma representação em string de um número.String
NULL se a conversão não for bem-sucedida. Int8 ou NULL
Exemplos
Exemplo de uso
Query
Response
toInt8OrZero
Introduzido em: v1.1.0 Assim comotoInt8, esta função converte um valor de entrada em um valor do tipo Int8, mas retorna 0 em caso de erro.
Argumentos compatíveis:
- Representações em string de (U)Int*.
0):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toInt8OrZero('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de Int8, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.
x— A representação de um número emString.String
0 caso a conversão falhe. Int8
Exemplos
Exemplo de uso
Query
Response
toInterval
Introduzido em: v25.4.0 Cria um valor Interval a partir de um valor numérico e de uma unidade em formato String. Esta função fornece uma forma unificada de criar intervalos de diferentes tipos (segundos, minutos, horas, dias, semanas, meses, trimestres, anos) a partir de uma única função, especificando a unidade como um argumento String. A unidade em String não diferencia maiúsculas de minúsculas. Isso equivale a chamar funções específicas de tipo, comotoIntervalSecond, toIntervalMinute, toIntervalDay etc.,
mas permite especificar a unidade dinamicamente como um parâmetro String.
Sintaxe
value— O valor numérico que representa a quantidade de unidades. Pode ser qualquer tipo numérico:Int8ouInt16ouInt32ouInt64ouUInt8ouUInt16ouUInt32ouUInt64ouFloat32ouFloat64unit— A unidade de tempo. Deve ser uma string constante. Valores válidos: ‘nanosecond’, ‘microsecond’, ‘millisecond’, ‘second’, ‘minute’, ‘hour’, ‘day’, ‘week’, ‘month’, ‘quarter’, ‘year’.String
Interval
Exemplos
Criar intervalos com diferentes unidades
Query
Response
Query
Response
Query
Response
toIntervalDay
Introduzido em: v1.1.0 Retorna um intervalo den dias do tipo de dados IntervalDay.
Sintaxe
n— Número de dias. Números inteiros ou suas representações em formato de string, e números de ponto flutuante.(U)Int*ouFloat*ouString
n dias. Interval
Exemplos
Exemplo de uso
Query
Response
toIntervalHour
Introduzido em: v1.1.0 Retorna um intervalo den horas do tipo de dados IntervalHour.
Sintaxe
n— Número de horas. Números inteiros ou suas representações em string, e números de ponto flutuante.Int*ouUInt*ouFloat*ouString
n horas. Interval
Exemplos
Exemplo de uso
Query
Response
toIntervalMicrosecond
Introduzido em: v22.6.0 Retorna um intervalo den microssegundos do tipo de dados IntervalMicrosecond.
Sintaxe
n microssegundos. Interval
Exemplos
Exemplo de uso
Query
Response
toIntervalMillisecond
Introduzido em: v22.6.0 Retorna um intervalo den milissegundos do tipo de dados IntervalMillisecond.
Sintaxe
n milissegundos. Interval
Exemplos
Exemplo de uso
Query
Response
toIntervalMinute
Introduzido em: v1.1.0 Retorna um intervalo den minutos do tipo IntervalMinute.
Sintaxe
n— Número de minutos. Números inteiros ou suas representações em string, além de números de ponto flutuante.(U)Int*ouFloat*ouString
n minutos. Interval
Exemplos
Exemplo de uso
Query
Response
toIntervalMonth
Introduzido na versão: v1.1.0 Retorna um intervalo den meses do tipo de dados IntervalMonth.
Sintaxe
n meses. Interval
Exemplos
Exemplo de uso
Query
Response
toIntervalNanosecond
Introduzido em: v22.6.0 Retorna um interval den nanossegundos do tipo de dado IntervalNanosecond.
Sintaxe
n nanossegundos. Interval
Exemplos
Exemplo de uso
Query
Response
toIntervalQuarter
Introduzido em: v1.1.0 Retorna um intervalo den trimestres do tipo de dados IntervalQuarter.
Sintaxe
n trimestres. Interval
Exemplos
Exemplo de uso
Query
Response
toIntervalSecond
Introduzido em: v1.1.0 Retorna um intervalo den segundos do tipo de dado IntervalSecond.
Sintaxe
n— Número de segundos. Números inteiros ou suas representações como string, e números de ponto flutuante.(U)Int*ouFloat*ouString
n segundos. Interval
Exemplos
Exemplo de uso
Query
Response
toIntervalWeek
Introduzido em: v1.1.0 Retorna um intervalo den semanas do tipo de dados IntervalWeek.
Sintaxe
n semanas. Interval
Exemplos
Exemplo de uso
Query
Response
toIntervalYear
Introduzido em: v1.1.0 Retorna um intervalo den anos do tipo de dado IntervalYear.
Sintaxe
n anos. Interval
Exemplos
Exemplo de uso
Query
Response
toLowCardinality
Introduzido em: v18.12.0 Converte o argumento de entrada para a versão LowCardinality do mesmo tipo de dado. Sintaxeexpr— Expressão que resulta em um dos tipos de dados compatíveis.StringouFixedStringouDateouDateTimeou(U)Int*ouFloat*
LowCardinality. LowCardinality
Exemplos
Exemplo de uso
Query
Response
toString
Introduzido em: v1.1.0 Converte valores para sua representação em string. Para argumentos DateTime, a função pode receber um segundo argumento String contendo o nome do fuso horário. Sintaxevalue— Valor a ser convertido para string.Anytimezone— Opcional. Nome do fuso horário para a conversão de DateTime.String
String
Exemplos
Exemplo de uso
Query
Response
toStringCutToZero
Introduzido em: v1.1.0 Aceita um argumento String ou FixedString e retorna uma String que contém uma cópia da string original truncada no primeiro byte nulo. Bytes nulos (\0) são considerados terminadores de string. Esta função é útil para processar strings no estilo C ou dados binários nos quais bytes nulos marcam o fim do conteúdo significativo. Sintaxes— String ou FixedString a ser processado.StringouFixedString
String
Exemplos
Exemplo de uso
Query
Response
toTime
Introduzido em: v25.5.0 Converte um valor de entrada para o tipo Time. Suporta conversão de String, FixedString, DateTime, DateTime64, Time64 ou tipos numéricos que representam segundos desde a meia-noite. Valores numéricos fora do intervalo do tipo (-999:59:59 a 999:59:59, ou seja, de -3599999 a 3599999 segundos) são limitados aos limites do intervalo, e valores de ponto flutuante não finitos (NaN, inf, -inf) não podem ser convertidos e resultam em uma exceção.
Valores Time64 são arredondados em direção ao infinito negativo para segundos inteiros e limitados ao mesmo intervalo.
Antes da v25.5,
toTime era uma função diferente, que convertia uma data com hora em uma data fixa (1970-01-02) enquanto preservava o
componente de hora. Essa função ainda está disponível com o nome toTimeWithFixedDate.Definir use_legacy_to_time como 1 também mantém o nome toTime vinculado à função
legada, ou seja, chamadas a toTime são resolvidas como toTimeWithFixedDate em vez da função de conversão descrita aqui.
Enquanto a configuração estiver habilitada, use CAST(x AS Time) ou x::Time para converter para o tipo Time.
A configuração usa 0 por padrão desde a v26.7, mas usava 1 por padrão da v25.6 à v26.6, motivo pelo qual os exemplos abaixo a definem explicitamente.x— Valor de entrada a converter.StringouFixedStringouDateTimeouDateTime64ouTime64ou(U)Int*ouBFloat16ouFloat*
Time
Exemplos
Conversão de DateTime64 para Time
Query
Response
Query
Response
Query
Response
toTime64
Introduzido em: v25.6.0 Converte um valor de entrada para o tipo Time64. Oferece suporte à conversão de String, FixedString, DateTime64 ou tipos numéricos que representam segundos desde a meia-noite. Fornece precisão de frações de segundo para valores de tempo, com atéscale dígitos fracionários.
Sintaxe
x— Valor de entrada para conversão.StringouFixedStringouDateTime64ou(U)Int*ouFloat*scale— Precisão (número de dígitos fracionários,0–9) doTime64resultante.(U)Int*
scale especificado. Time64
Exemplos
Conversão de String para Time64
Query
Response
Query
Response
Query
Response
toTime64OrNull
Introduzido em: v25.6.0 Converte um valor de entrada em um valor do tipoTime64, mas retorna NULL em caso de erro.
É como toTime64, mas retorna NULL em vez de lançar uma exceção em caso de erro de conversão.
Veja também:
Sintaxe
x— Uma representação textual de um horário com precisão de frações de segundo.Stringprecision— Opcional. A precisão de frações de segundo do valor retornado.UInt8
Time64 em caso de sucesso; caso contrário, NULL. Time64 ou NULL
Exemplos
Exemplo de uso
Query
Response
toTime64OrZero
Introduzido em: v25.6.0 Converte um valor de entrada em um valor do tipoTime64, mas retorna o valor zero de Time64 (00:00:00) caso receba um argumento inválido.
O mesmo que toTime64, mas retorna o valor zero de Time64 caso receba um argumento inválido.
Veja também:
Sintaxe
x— Uma representação textual de um horário com precisão de frações de segundo.Stringprecision— Opcional. A precisão de frações de segundo do valor retornado.UInt8
Time64 em caso de sucesso; caso contrário, o valor Time64 zero (00:00:00) na precisão solicitada. Time64
Exemplos
Exemplo de uso
Query
Response
toTimeOrNull
Introduzido em: v25.5.0 Converte um valor de entrada em um valor do tipo Time, mas retornaNULL em caso de erro.
Semelhante a toTime, mas retorna NULL em vez de lançar uma exceção em caso de erro de conversão.
Veja também:
Sintaxe
x— Uma representação textual de um horário.String
Time em caso de sucesso; caso contrário, NULL. Time ou NULL
Exemplos
Exemplo de uso
Query
Response
toTimeOrZero
Introduzido em: v25.5.0 Converte um valor de entrada em um valor do tipo Time, mas retorna00:00:00 em caso de erro.
Semelhante a toTime, mas retorna 00:00:00 em vez de lançar uma exceção em caso de erros de conversão.
Sintaxe
x— Uma representação textual de um horário.String
Time em caso de sucesso; caso contrário, 00:00:00. Time
Exemplos
Exemplo de uso
Query
Response
toUInt128
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipoUInt128.
Lança uma exceção em caso de erro.
A função usa arredondamento em direção a zero, o que significa que trunca os dígitos fracionários dos números.
Argumentos aceitos:
- Valores ou representações em string do tipo (U)Int*.
- Valores do tipo Float*.
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt128('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de UInt128, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.
expr— Expressão que retorna um número ou a representação textual de um número.Expressão
UInt128
Exemplos
Exemplo de uso
Query
Response
toUInt128OrDefault
Introduzido em: v21.11.0 Assim comotoUInt128, esta função converte um valor de entrada em um valor do tipo UInt128, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou a representação em string de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se a análise não for bem-sucedida.UInt128
UInt128
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toUInt128OrNull
Introduzido em: v21.6.0 Assim comotoUInt128, esta função converte um valor de entrada para o tipo UInt128, mas retorna NULL em caso de erro.
Argumentos suportados:
- Representações em string de (U)Int*.
NULL):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt128OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt128, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma representação textual de um número.String
NULL se a conversão não for bem-sucedida. UInt128 ou NULL
Exemplos
Exemplo de uso
Query
Response
toUInt128OrZero
Introduzido em: v1.1.0 Assim comotoUInt128, esta função converte um valor de entrada em um valor do tipo UInt128, mas retorna 0 em caso de erro.
Argumentos compatíveis:
- Representações em string de (U)Int*.
0):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt128OrZero('0xc0fe');.
Se o valor de entrada não puder ser representado nos limites de
UInt128, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma string que representa um número.String
0 se a conversão falhar. UInt128
Exemplos
Exemplo de uso
Query
Response
toUInt16
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipoUInt16.
Lança uma exceção em caso de erro.
Argumentos suportados:
- Valores ou representações em string do tipo (U)Int*.
- Valores do tipo Float*.
- Representações em string de valores do tipo Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo:
SELECT toUInt16('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt16, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.
Por exemplo: SELECT toUInt16(65536) == 0;.A função usa arredondamento em direção a zero, ou seja, trunca os dígitos fracionários dos números.
expr— Expressão que retorna um número ou a representação textual de um número.Expressão
UInt16
Exemplos
Exemplo de uso
Query
Response
toUInt16OrDefault
Introduzido em: v21.11.0 Assim comotoUInt16, esta função converte um valor de entrada em um valor do tipo UInt16, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou a representação textual de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se o parsing não for bem-sucedido.UInt16
UInt16
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toUInt16OrNull
Introduzido em: v1.1.0 Assim comotoUInt16, esta função converte um valor de entrada em um valor do tipo UInt16, mas retorna NULL em caso de erro.
Argumentos compatíveis:
- Representações em string de (U)Int8/16/32/128/256.
NULL):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt16OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt16, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma representação em string de um número.String
UInt16 ou NULL, caso a conversão não seja bem-sucedida. UInt16 ou NULL
Exemplos
Exemplo de uso
Query
Response
toUInt16OrZero
Introduzido em: v1.1.0 Assim comotoUInt16, esta função converte um valor de entrada para um valor do tipo UInt16, mas retorna 0 em caso de erro.
Argumentos suportados:
- Representações em string de (U)Int8/16/32/128/256.
0):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt16OrZero('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt16, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma representação textual de um número.String
0. UInt16
Exemplos
Exemplo de uso
Query
Response
toUInt256
Introduzido em: v1.1.0 Converte um valor de entrada para o tipo UInt256. Lança uma exceção em caso de erro. A função usa arredondamento em direção a zero, ou seja, trunca os dígitos fracionários dos números. Argumentos suportados:- Valores ou representações em string do tipo (U)Int*.
- Valores do tipo Float*.
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt256('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de UInt256, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.
expr— Expressão que retorna um número ou a representação textual de um número.Expressão
UInt256
Exemplos
Exemplo de uso
Query
Response
toUInt256OrDefault
Introduzido em: v21.11.0 Assim comotoUInt256, esta função converte um valor de entrada em um valor do tipo UInt256, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou uma representação textual de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se o parsing falhar.UInt256
UInt256
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toUInt256OrNull
Introduzido em: v20.8.0 Assim comotoUInt256, esta função converte um valor de entrada em um valor do tipo UInt256, mas retorna NULL em caso de erro.
Argumentos compatíveis:
- Representações em string de (U)Int*.
NULL):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt256OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt256, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma representação textual de um número emString.String
NULL, se a conversão não for bem-sucedida. UInt256 ou NULL
Exemplos
Exemplo de uso
Query
Response
toUInt256OrZero
Introduzido em: v20.8.0 Assim comotoUInt256, esta função converte um valor de entrada em um valor do tipo UInt256, mas retorna 0 em caso de erro.
Argumentos suportados:
- Representações em string de (U)Int*.
0):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt256OrZero('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt256, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma representação textual de um número.String
0. UInt256
Exemplos
Exemplo de uso
Query
Response
toUInt32
Introduzido em: v1.1.0 Converte um valor de entrada para um valor do tipoUInt32.
Lança uma exceção em caso de erro.
Argumentos suportados:
- Valores ou representações de string do tipo (U)Int*.
- Valores do tipo Float*.
- Representações de string de valores Float*, incluindo
NaNeInf. - Representações de string de valores binários e hexadecimais, por exemplo,
SELECT toUInt32('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt32, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.
Por exemplo: SELECT toUInt32(4294967296) == 0;A função usa arredondamento em direção a zero, o que significa que ela trunca os dígitos fracionários dos números.
expr— Expressão que retorna um número ou sua representação textual.Expressão
UInt32
Exemplos
Exemplo de uso
Query
Response
toUInt32OrDefault
Introduzido em: v21.11.0 Assim comotoUInt32, esta função converte um valor de entrada em um valor do tipo UInt32, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for fornecido, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou a representação textual de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se a análise falhar.UInt32
UInt32
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toUInt32OrNull
Introduzido em: v1.1.0 Assim comotoUInt32, esta função converte um valor de entrada em um valor do tipo UInt32, mas retorna NULL em caso de erro.
Argumentos compatíveis:
- Representações em string de (U)Int8/16/32/128/256.
NULL):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt32OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt32, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma representação de um número emString.String
UInt32 ou NULL, se a conversão não for bem-sucedida. UInt32 ou NULL
Exemplos
Exemplo de uso
Query
Response
toUInt32OrZero
Introduzido em: v1.1.0 Assim comotoUInt32, esta função converte um valor de entrada em um valor do tipo UInt32, mas retorna 0 em caso de erro.
Argumentos aceitos:
- Representações em string de (U)Int8/16/32/128/256.
0):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt32OrZero('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt32, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma representação de um número comoString.String
0, se a conversão falhar. UInt32
Exemplos
Exemplo de uso
Query
Response
toUInt64
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipoUInt64.
Lança uma exceção em caso de erro.
Argumentos aceitos:
- Valores ou representações em string do tipo (U)Int*.
- Valores do tipo Float*.
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt64('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt64, o resultado sofrerá overflow ou underflow.
Isso não é considerado um erro.
Por exemplo: SELECT toUInt64(18446744073709551616) == 0;A função usa arredondamento em direção a zero, ou seja, trunca os dígitos fracionários dos números.
expr— Expressão que retorna um número ou a representação textual de um número.Expressão
UInt64
Exemplos
Exemplo de uso
Query
Response
toUInt64OrDefault
Introduzido em: v21.11.0 Assim comotoUInt64, esta função converte um valor de entrada em um valor do tipo UInt64, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou a representação em string de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se a análise não for bem-sucedida.UInt64
UInt64
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toUInt64OrNull
Introduzido em: v1.1.0 Assim comotoUInt64, esta função converte um valor de entrada em um valor do tipo UInt64, mas retorna NULL em caso de erro.
Argumentos suportados:
- Representações em string de (U)Int*.
NULL):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt64OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt64, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma representação em String de um número.String
NULL. UInt64 ou NULL
Exemplos
Exemplo de uso
Query
Response
toUInt64OrZero
Introduzido em: v1.1.0 ComotoUInt64, esta função converte um valor de entrada em um valor do tipo UInt64, mas retorna 0 em caso de erro.
Argumentos compatíveis:
- Representações em string de (U)Int*.
0):
- Representações em string de valores Float*, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt64OrZero('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt64, ocorrerá overflow ou underflow do resultado.
Isso não é considerado um erro.x— Uma representação textual de um número.String
0 se a conversão não for bem-sucedida. UInt64
Exemplos
Exemplo de uso
Query
Response
toUInt8
Introduzido em: v1.1.0 Converte um valor de entrada em um valor do tipoUInt8.
Lança uma exceção em caso de erro.
Argumentos aceitos:
- Valores ou representações textuais do tipo (U)Int*.
- Valores do tipo Float*.
- Representações textuais de valores Float*, incluindo
NaNeInf. - Representações textuais de valores binários e hexadecimais, por exemplo,
SELECT toUInt8('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de UInt8, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.
Por exemplo:
SELECT toUInt8(256) == 0;.A função usa arredondamento em direção a zero, ou seja, trunca os dígitos fracionários dos números.
expr— Expressão que retorna um número ou uma representação textual de um número.Expressão
UInt8
Exemplos
Exemplo de uso
Query
Response
toUInt8OrDefault
Introduzido em: v21.11.0 Assim comotoUInt8, esta função converte um valor de entrada em um valor do tipo UInt8, mas retorna o valor padrão em caso de erro.
Se nenhum valor default for informado, 0 será retornado em caso de erro.
Sintaxe
expr— Expressão que retorna um número ou a representação textual de um número.Stringou(U)Int*ouFloat*default— Opcional. O valor padrão a ser retornado se a análise falhar.UInt8
UInt8
Exemplos
Conversão bem-sucedida
Query
Response
Query
Response
toUInt8OrNull
Introduzido em: v1.1.0 Assim comotoUInt8, esta função converte um valor de entrada em um valor do tipo UInt8, mas retorna NULL em caso de erro.
Argumentos suportados:
- Representações em string de (U)Int8/16/32/128/256.
NULL):
- Representações em string de valores Float* convencionais, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo:
SELECT toUInt8OrNull('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt8, ocorrerá overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma representação em string de um número.String
NULL se a conversão não for bem-sucedida. UInt8 ou NULL
Exemplos
Exemplo de uso
Query
Response
toUInt8OrZero
Introduzido em: v1.1.0 Assim comotoUInt8, esta função converte um valor de entrada em um valor do tipo UInt8, mas retorna 0 em caso de erro.
Argumentos com suporte:
- Representações em string de (U)Int8/16/32/128/256.
0):
- Representações em string de valores Float* comuns, incluindo
NaNeInf. - Representações em string de valores binários e hexadecimais, por exemplo,
SELECT toUInt8OrZero('0xc0fe');.
Se o valor de entrada não puder ser representado dentro dos limites de
UInt8, ocorre overflow ou underflow no resultado.
Isso não é considerado um erro.x— Uma representação textual de um número.String
0. UInt8
Exemplos
Exemplo de uso
Query
Response
toUUID
Introduzido em: v1.1.0 Converte um valor do tipo String em um valor UUID. Sintaxestring— UUID em formato de string.StringouFixedString
UUID
Exemplos
Exemplo de uso
Query
Response
toUUIDOrZero
Introduzido em: v20.12.0 Converte um valor de entrada em um valor do tipo UUID, mas retorna um UUID zero em caso de erro. Semelhante atoUUID, mas retorna um UUID zero (00000000-0000-0000-0000-000000000000) em vez de lançar uma exceção em erros de conversão.
Argumentos suportados:
- Representações de UUID em formato de string no formato padrão (8-4-4-4-12 dígitos hexadecimais).
- Representações de UUID em formato de string sem hífens (32 dígitos hexadecimais).
- Formatos de string inválidos.
- Tipos que não são string.
x— Uma representação textual de um UUID.String
00000000-0000-0000-0000-000000000000). UUID
Exemplos
Exemplo de uso
Query
Response
toUnixTimestamp64Micro
Introduzido em: v20.5.0 Converte umDateTime64 em um valor Int64 com precisão fixa de microssegundos.
O valor de entrada é ampliado ou reduzido conforme necessário, dependendo da sua precisão.
O valor de saída é relativo a UTC, não ao fuso horário do valor de entrada.
value— Valor do tipo DateTime64 com qualquer precisão.DateTime64
Int64
Exemplos
Exemplo de uso
Query
Response
toUnixTimestamp64Milli
Introduzido em: v20.5.0 Converte umDateTime64 em um valor Int64 com precisão fixa de milissegundos.
O valor de entrada é ajustado para mais ou para menos conforme necessário, dependendo da sua precisão.
O valor de saída é relativo a UTC, não ao fuso horário do valor de entrada.
value— Valor do tipo DateTime64 com qualquer precisão.DateTime64
Int64
Exemplos
Exemplo de uso
Query
Response
toUnixTimestamp64Nano
Introduzido em: v20.5.0 Converte umDateTime64 em um valor Int64 com precisão fixa em nanossegundos.
O valor de entrada é ajustado para mais ou para menos conforme necessário, dependendo da sua precisão.
O valor de saída é relativo a UTC, não ao fuso horário do valor de entrada.
value— Valor do tipo DateTime64 com qualquer precisão.DateTime64
Int64
Exemplos
Exemplo de uso
Query
Response
toUnixTimestamp64Second
Introduzido na versão: v24.12.0 Converte umDateTime64 em um valor Int64 com precisão fixa de segundos.
O valor de entrada é ajustado para mais ou para menos conforme necessário, dependendo da sua precisão.
O valor de saída é relativo a UTC, não ao fuso horário do valor de entrada.
value— Valor do tipo DateTime64 com qualquer precisão.DateTime64
Int64
Exemplos
Exemplo de uso
Query
Response