TO_TIMESTAMP (Lakehouse v1)
TO_TIMESTAMP converte uma expressão numa data com hora (timestamp/datetime).
A função pode aceitar um ou dois argumentos. Se receber um argumento, a função extrai uma data da cadeia de caracteres. Se o argumento for um número inteiro, a função interpreta-o como o número de segundos, milissegundos ou microssegundos antes (se for negativo) ou depois (se for positivo) da época Unix (meia-noite de 1 de janeiro de 1970):
- Se o número inteiro for inferior a 31 536 000 000, é tratado como segundos.
- Se o número inteiro for maior ou igual a 31 536 000 000 e inferior a 31 536 000 000 000, é tratado como milissegundos.
- Se o número inteiro for maior ou igual a 31 536 000 000 000, é tratado como microssegundos.
Se receber dois argumentos, a função converte a primeira cadeia de caracteres num timestamp com base no formato especificado na segunda cadeia. Para personalizar o formato de data e hora no PlaidCloud Lakehouse, pode utilizar especificadores. Estes especificadores permitem definir o formato pretendido para os valores de data e hora. Para consultar a lista completa de especificadores suportados, veja Formatting Date and Time.
- O timestamp de saída reflete o fuso horário do seu PlaidCloud Lakehouse.
- A informação do fuso horário tem de estar incluída na cadeia de caracteres que pretende converter; caso contrário, é devolvido NULL.
Os formatos de data são expressos através da especificação strftime. Consulte a referência rápida.
Veja também: TO_DATE
Sintaxe do Analyze
Seção intitulada “Sintaxe do Analyze”func.to_timestamp(<expr>)Exemplos do Analyze
Seção intitulada “Exemplos do Analyze”func.to_timestamp('2022-01-02T03:25:02.868894-07:00')
┌────────────────────────────────────────────────────────────────┐│ func.to_timestamp('2022-01-02T03:25:02.868894-07:00') ││ Timestamp │├────────────────────────────────────────────────────────────────┤│ 2022-01-02 10:25:02.868894 │└────────────────────────────────────────────────────────────────┘Sintaxe SQL
Seção intitulada “Sintaxe SQL”-- Convert a string or integer to a timestampTO_TIMESTAMP(<expr>)
-- Convert a string to a timestamp using the given patternTO_TIMESTAMP(<expr, expr>)Tipo de Retorno
Seção intitulada “Tipo de Retorno”Devolve um timestamp no formato “YYYY-MM-DD hh:mm:ss.ffffff”. Se a cadeia de caracteres indicada corresponder a este formato mas não tiver a parte da hora, é automaticamente alargada para este padrão. O valor de preenchimento é 0.
Aliases
Seção intitulada “Aliases”Exemplos SQL
Seção intitulada “Exemplos SQL”Com um Argumento de Cadeia de Caracteres
Seção intitulada “Com um Argumento de Cadeia de Caracteres”SELECT TO_TIMESTAMP('2022-01-02T03:25:02.868894-07:00');
---2022-01-02 10:25:02.868894
SELECT TO_TIMESTAMP('2022-01-02 02:00:11');
---2022-01-02 02:00:11.000000
SELECT TO_TIMESTAMP('2022-01-02T02:00:22');
---2022-01-02 02:00:22.000000
SELECT TO_TIMESTAMP('2022-01-02T01:12:00-07:00');
---2022-01-02 08:12:00.000000
SELECT TO_TIMESTAMP('2022-01-02T01');
---2022-01-02 01:00:00.000000Com um Argumento Inteiro
Seção intitulada “Com um Argumento Inteiro”SELECT TO_TIMESTAMP(1);
---1970-01-01 00:00:01.000000
SELECT TO_TIMESTAMP(-1);
---1969-12-31 23:59:59.000000Com Dois Argumentos
Seção intitulada “Com Dois Argumentos”SET GLOBAL timezone ='Japan';SELECT TO_TIMESTAMP('2022 年 2 月 4 日、8 時 58 分 59 秒、タイムゾーン:+0900', '%Y年%m月%d日、%H時%M分%S秒、タイムゾーン:%z');
---2022-02-04 08:58:59.000000
SET GLOBAL timezone ='America/Toronto';SELECT TO_TIMESTAMP('2022 年 2 月 4 日、8 時 58 分 59 秒、タイムゾーン:+0900', '%Y年%m月%d日、%H時%M分%S秒、タイムゾーン:%z');
---2022-02-03 18:58:59.000000