Valori letterali di intervallo - AWS Clean Rooms

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Valori letterali di intervallo

Di seguito sono riportate le regole per l'utilizzo di valori letterali a intervalli supportati da. AWS Clean Rooms

Usa un valore letterale di intervallo per identificare periodi di tempo specifici, come 12 hours o 6 weeks. È possibile usare questi valori letterali di intervallo in condizioni e calcoli che comprendono espressioni datetime.

Nota

Non è possibile utilizzare il tipo di dati INTERVAL per le colonne nelle tabelle. AWS Clean Rooms

Un intervallo viene espresso come una combinazione della parola chiave INTERVAL con una quantità numerica e una parte di data supportata, ad esempio INTERVAL '7 days' o INTERVAL '59 minutes'. È possibile collegare diverse quantità e unità per formare un intervallo più preciso; ad esempio INTERVAL '7 days, 3 hours, 59 minutes'. Anche abbreviazioni e plurali di ciascuna unità sono supportati; ad esempio: 5 s, 5 second e 5 seconds sono intervalli equivalenti.

Se non si specifica una parte data, il valore di intervallo rappresenterà i secondi. È possibile specificare il valore di quantità come una frazione (ad esempio: 0.5 days).

Esempi

Gli esempi seguenti mostrano una serie di calcoli con valori di intervallo diversi.

L'esempio seguente aggiunge 1 secondo alla data specificata.

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

L'esempio seguente aggiunge 1 minuto alla data specificata.

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

L'esempio seguente aggiunge 3 ore e 35 minuti alla data specificata.

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)

L'esempio seguente aggiunge 52 settimane alla data specificata.

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

L'esempio seguente aggiunge 1 settimana, 1 ora, 1 minuto e 1 secondo alla data specificata.

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)

L'esempio seguente aggiunge 12 ore (mezza giornata) alla data specificata.

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

L'esempio seguente sottrae 4 mesi dal 15 febbraio 2023 e il risultato è il 15 ottobre 2022.

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

L'esempio seguente sottrae 4 mesi dal 31 marzo 2023 e il risultato è il 30 novembre 2022. Il calcolo considera il numero di giorni in un mese.

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