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