Literais de intervalo - AWS Clean Rooms

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Literais de intervalo

A seguir estão as regras para trabalhar com literais de intervalo compatíveis com o AWS Clean Rooms.

Use um literal de intervalo para identificar períodos de tempo específicos, tais como 12 hours ou 6 weeks. Você pode usar esses literais de intervalo em condições e cálculos que envolvem expressões de data e hora.

nota

Você não pode usar o tipo de dados INTERVAL para colunas em AWS Clean Rooms tabelas.

Um intervalo é expressado como uma combinação da palavra-chave de INTERVAL com uma quantidade numérica e uma parte da data compatível; por exemplo INTERVAL '7 days' ou INTERVAL '59 minutes'. Você pode conectar várias quantidades e unidades para formar um intervalo mais preciso, por exemplo: INTERVAL '7 days, 3 hours, 59 minutes'. As abreviaturas e os plurais de cada unidade também são compatíveis; por exemplo: 5 s, 5 second e 5 seconds são intervalos equivalentes.

Se você não especificar uma parte da data, o valor do intervalo representará os segundos. Você pode especificar o valor de quantidade como uma fração (por exemplo: 0.5 days).

Exemplos

Os exemplos a seguir mostram uma série de cálculos com diferentes valores de intervalo.

O exemplo a seguir adiciona 1 segundo à data especificada.

select caldate + interval '1 second' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2008-12-31 00:00:01 (1 row)

O exemplo a seguir adiciona 1 minuto à data especificada.

select caldate + interval '1 minute' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2008-12-31 00:01:00 (1 row)

O exemplo a seguir adiciona 3 horas e 35 minutos à data especificada.

select caldate + interval '3 hours, 35 minutes' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2008-12-31 03:35:00 (1 row)

O exemplo a seguir adiciona 52 semanas à data especificada

select caldate + interval '52 weeks' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2009-12-30 00:00:00 (1 row)

O exemplo a seguir adiciona 1 semana, 1 hora, 1 minuto e 1 segundo à data especificada.

select caldate + interval '1w, 1h, 1m, 1s' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2009-01-07 01:01:01 (1 row)

O exemplo a seguir adiciona 12 horas (meio dia) à data especificada.

select caldate + interval '0.5 days' as dateplus from date where caldate='12-31-2008'; dateplus --------------------- 2008-12-31 12:00:00 (1 row)

O exemplo a seguir subtrai 4 meses de 15 de fevereiro de 2023 e o resultado é 15 de outubro de 2022.

select date '2023-02-15' - interval '4 months'; ?column? --------------------- 2022-10-15 00:00:00

O exemplo a seguir subtrai 4 meses de 31 de março de 2023 e o resultado é 30 de novembro de 2022. O cálculo considera o número de dias em um mês.

select date '2023-03-31' - interval '4 months'; ?column? --------------------- 2022-11-30 00:00:00