Perfis de data e hora
Nesta seção, você pode encontrar informações sobre as funções escalares de data e hora compatíveis com o Amazon Redshift.
Tópicos
- Resumo das funções de data e hora
- Funções de data e hora em transações
- Funções somente nó de liderança defasadas
- Operador + (Concatenação)
- Função ADD_MONTHS
- Função AT TIME ZONE
- Função CONVERT_TIMEZONE
- Função CURRENT_DATE
- Função DATE_CMP
- Função DATE_CMP_TIMESTAMP
- Função DATE_CMP_TIMESTAMPTZ
- Função DATEADD
- Função DATEDIFF
- Função DATE_PART
- Função DATE_PART_YEAR
- Função DATE_TRUNC
- Função EXTRACT
- Função GETDATE
- Função INTERVAL_CMP
- Função LAST_DAY
- Função MONTHS_BETWEEN
- Função NEXT_DAY
- Função SYSDATE
- Função TIMEOFDAY
- Função TIMESTAMP_CMP
- Função TIMESTAMP_CMP_DATE
- Função TIMESTAMP_CMP_TIMESTAMPTZ
- Função TIMESTAMPTZ_CMP
- Função TIMESTAMPTZ_CMP_DATE
- Função TIMESTAMPTZ_CMP_TIMESTAMP
- Função TIMEZONE
- Função TO_TIMESTAMP
- Função TRUNC
- Partes da data para funções de data ou de timestamp
Resumo das funções de data e hora
Função | Sintaxe | Retornos |
---|---|---|
Operador + (Concatenação)
Concatena uma data para uma hora em ambos os lados do símbolo + e retorna um TIMESTAMP ou TIMESTAMPTZ. |
date + time | TIMESTAMP ou TIMESTAMPZ |
ADD_MONTHS Adiciona o número especificado de meses a uma data ou timestamp. |
ADD_MONTHS ({date|timestamp}, integer) | TIMESTAMP |
AT TIME ZONE Especifica qual fuso horário a usar com uma expressão TIMESTAMP ou TIMESTAMPTZ. |
AT TIME ZONE 'timezone' | TIMESTAMP ou TIMESTAMPZ |
CONVERT_TIMEZONE Converte um timestamp de um fuso horário para outro. |
CONVERT_TIMEZONE (['timezone',] 'timezone', timestamp) | TIMESTAMP |
CURRENT_DATE Retorna uma data no fuso horário da sessão atual (UTC por padrão) para o início da transação atual. |
CURRENT_DATE | DATE |
DATE_CMP Compara duas datas e retorna |
DATE_CMP (date1, date2) | INTEGER |
DATE_CMP_TIMESTAMP Compara uma data a uma hora e retorna |
DATE_CMP_TIMESTAMP (date, timestamp) | INTEGER |
DATE_CMP_TIMESTAMPTZ Compara uma data e um timestamp com fuso horário, e retorna |
DATE_CMP_TIMESTAMPTZ (date, timestamptz) | INTEGER |
DATE_PART_YEAR Extrai o ano de uma data. |
DATE_PART_YEAR (date) | INTEGER |
DATEADD Incrementa uma data ou hora com um intervalo especificado. |
DATEADD (datepart, interval, {date|time|timetz|timestamp}) | TIMESTAMP ou TIME ou TIMETZ |
DATEDIFF Retorna a diferença entre as duas datas ou horas para determinada parte da data, tal como um dia ou mês. |
DATEDIFF (datepart, {date|time|timetz|timestamp},
{date|time|timetz|timestamp}) |
BIGINT |
DATE_PART Extrai um valor da parte de data de uma data ou hora. |
DATE_PART (datepart, {date|timestamp}) | DOUBLE |
DATE_TRUNC Trunca um timestamp com base em uma parte da data. |
DATE_TRUNC ('datepart', timestamp) | TIMESTAMP |
EXTRACT Extrai uma parte da data ou hora de um timestamp, timestamptz, time ou timetz. |
EXTRACT (datepart FROM source) | INTEGER or DOUBLE |
GETDATE Retorna a atual data e hora no fuso horário da sessão atual (UTC por padrão). Os parênteses são necessários. |
GETDATE() | TIMESTAMP |
INTERVAL_CMP Compara dois intervalos e retorna |
INTERVAL_CMP (interval1, interval2) | INTEGER |
LAST_DAY Retorna a data do último dia do mês que contém data. |
LAST_DAY(date) | DATE |
MONTHS_BETWEEN Retorna o número de meses entre duas datas. |
MONTHS_BETWEEN (date, date) | FLOAT8 |
NEXT_DAY Retorna a data da primeira instância do dia que é mais recente que a data. |
NEXT_DAY (date, day) | DATE |
SYSDATE Retorna a data e hora em UTC para o início da transação atual. |
SYSDATE | TIMESTAMP |
TIMEOFDAY Retorna o atual dia da semana, data e hora no fuso horário da sessão atual (UTC por padrão) com um valor de string. |
TIMEOFDAY() | VARCHAR |
TIMESTAMP_CMP Compara dois timestamps e retorna |
TIMESTAMP_CMP (timestamp1, timestamp2) | INTEGER |
TIMESTAMP_CMP_DATE Compara um timestamp a uma data e retorna |
TIMESTAMP_CMP_DATE (timestamp, date) | INTEGER |
TIMESTAMP_CMP_TIMESTAMPTZ Compara um timestamp a um timestamp com fuso horário e retorna |
TIMESTAMP_CMP_TIMESTAMPTZ (timestamp, timestamptz) | INTEGER |
TIMESTAMPTZ_CMP Compara dois timestamps com valores de fuso horário e retorna |
TIMESTAMPTZ_CMP (timestamptz1, timestamptz2) | INTEGER |
TIMESTAMPTZ_CMP_DATE Compara o valor de um timestamp com fuso horário a uma data e retorna |
TIMESTAMPTZ_CMP_DATE (timestamptz, date) | INTEGER |
TIMESTAMPTZ_CMP_TIMESTAMP Compara um timestamp com fuso horário a um timestamp e retorna |
TIMESTAMPTZ_CMP_TIMESTAMP (timestamptz, timestamp) | INTEGER |
TIMEZONE Retorna um timestamp para o valor de fuso horário e timestamp especificados. |
TIMEZONE ('timezone' { timestamp | timestamptz ) | TIMESTAMP ou TIMESTAMPTZ |
TO_TIMESTAMP Retorna um timestamp com fuso horário para o formato de timestamp e fuso horário especificados. |
TO_TIMESTAMP ('timestamp', 'format') | TIMESTAMPTZ |
TRUNC Trunca um timestamp e retorna uma data. |
TRUNC(timestamp) | DATE |
nota
Segundos intercalados não são considerados em cálculos tempo decorrido.
Funções de data e hora em transações
Quando você executa as seguintes funções em um bloco de transação (BEGIN… END), a função retorna a data ou hora de início da transação atual, não o início da instrução atual.
-
SYSDATE
-
TIMESTAMP
-
CURRENT_DATE
As seguintes funções sempre retornam a data ou hora de início da atual instrução, mesmo quando estiverem em um bloco de transação.
-
GETDATE
-
TIMEOFDAY
Funções somente nó de liderança defasadas
As seguintes funções de data estão defasadas, pois executam somente no nó de liderança. Para ter mais informações, consulte Função de apenas nó líder.
-
AGE. Use Função DATEDIFF em vez disso.
-
CURRENT_TIME. Use Função GETDATE ou SYSDATE em vez disso.
-
CURRENT_TIMESTAMP. Use Função GETDATE ou SYSDATE em vez disso.
-
LOCALTIME. Use Função GETDATE ou SYSDATE em vez disso.
-
LOCALTIMESTAMP. Use Função GETDATE ou SYSDATE em vez disso.
-
ISFINITE
-
NOW. Use Função GETDATE ou SYSDATE em vez disso.