Perfis de data e hora - Amazon Redshift

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.

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 0 se as datas forem idênticas, 1 se date1 for maior e -1 se date2 for maior.

DATE_CMP (date1, date2) INTEGER
DATE_CMP_TIMESTAMP

Compara uma data a uma hora e retorna 0 se os valores forem idênticos, 1 se date for maior e -1 se timestamp for maior.

DATE_CMP_TIMESTAMP (date, timestamp) INTEGER
DATE_CMP_TIMESTAMPTZ

Compara uma data e um timestamp com fuso horário, e retorna 0 se os valores forem idênticos, 1 se date for maior e -1 se timestamptz for maior.

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 0 se os intervalos forem iguais, 1 se interval1 for maior e -1 se interval2 for maior.

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 0 se os timestamps forem iguais, 1 se timestamp1 for maior e -1 se timestamp2 for maior.

TIMESTAMP_CMP (timestamp1, timestamp2) INTEGER
TIMESTAMP_CMP_DATE

Compara um timestamp a uma data e retorna 0 se os valores forem idênticos, 1 se timestamp for maior e -1 se date for maior.

TIMESTAMP_CMP_DATE (timestamp, date) INTEGER
TIMESTAMP_CMP_TIMESTAMPTZ

Compara um timestamp a um timestamp com fuso horário e retorna 0 se os valores forem iguais, 1 se timestamp for maior e -1 se timestamptz for maior.

TIMESTAMP_CMP_TIMESTAMPTZ (timestamp, timestamptz) INTEGER
TIMESTAMPTZ_CMP

Compara dois timestamps com valores de fuso horário e retorna 0 se os valores forem iguais, 1 se timestamptz1 for maior e -1 se timestamptz2 for maior.

TIMESTAMPTZ_CMP (timestamptz1, timestamptz2) INTEGER
TIMESTAMPTZ_CMP_DATE

Compara o valor de um timestamp com fuso horário a uma data e retorna 0 se os valores forem iguais, 1 se timestamptz for maior e -1 se date for maior.

TIMESTAMPTZ_CMP_DATE (timestamptz, date) INTEGER
TIMESTAMPTZ_CMP_TIMESTAMP

Compara um timestamp com fuso horário a um timestamp e retorna 0 se os valores forem iguais, 1 se timestamptz for maior e -1 se timestamp for maior.

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.