Amazon Redshift non supporterà più la creazione di nuovi Python UDFs a partire dalla Patch 198. Python esistente UDFs continuerà a funzionare fino al 30 giugno 2026. Per ulteriori informazioni, consulta il post del blog
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à.
Funzioni di data e ora
In questa sezione, sono riportate le informazioni sulle funzioni scalari di data e ora supportate da Amazon Redshift.
Argomenti
Riepilogo delle funzioni di data e ora
| Funzione | Sintassi | Valori restituiti |
|---|---|---|
| Operatore + (concatenamento)
Concatena una data a un'ora su entrambi i lati del simbolo + e restituisce un TIMESTAMPT o TIMESTAMPTZ. |
data+ora | TIMESTAMP o TIMESTAMPZ |
| ADD_MONTHS Aggiunge il numero di mesi specificato a una data o a un timestamp. |
ADD_MONTHS ({date|timestamp}, integer) | TIMESTAMP |
| AT TIME ZONE Specifica quale fuso orario utilizzare con un'espressione TIMESTAMP o TIMESTAMPTZ. |
AT TIME ZONE 'timezone' | TIMESTAMP o TIMESTAMPZ |
| CONVERT_TIMEZONE Converte un timestamp da un fuso orario a un altro. |
CONVERT_TIMEZONE (['timezone',] 'timezone', timestamp) | TIMESTAMP |
| CURRENT_DATE Restituisce una data nel fuso orario della sessione corrente (UTC per impostazione predefinita) per l'inizio della transazione corrente. |
CURRENT_DATE | DATE |
| DATE_CMP Confronta due date e restituisce |
DATE_CMP (date1, date2) | INTEGER |
| DATE_CMP_TIMESTAMP Confronta una data con un’ora e restituisce |
DATE_CMP_TIMESTAMP (date, timestamp) | INTEGER |
| DATE_CMP_TIMESTAMPTZ Confronta una data e un timestamp con il fuso orario e restituisce |
DATE_CMP_TIMESTAMPTZ (date, timestamptz) | INTEGER |
| DATE_PART_YEAR Estrae l'anno da una data. |
DATE_PART_YEAR (date) | INTEGER |
| DATEADD Incrementa una data o un'ora dell'intervallo specificato. |
DATEADD (datepart, interval, {date|time|timetz|timestamp}) | TIMESTAMP o TIME o TIMETZ |
| DATEDIFF Restituisce la differenza tra due date o ore per una determinata parte di data, come un giorno o un mese. |
DATEDIFF (datepart, {date|time|timetz|timestamp},
{date|time|timetz|timestamp}) |
BIGINT |
| DATE_PART Estrae un valore della parte di data da una data o un'ora. |
DATE_PART (datepart, {date|timestamp}) | DOUBLE |
| DATE_TRUNC Tronca un timestamp in base a una parte di data. |
DATE_TRUNC ('datepart', timestamp) | TIMESTAMP |
| EXTRACT Estrae una parte di data o di ora da un timestamp, timestamptz, time o timetz. |
EXTRACT (datepart FROM source) | INTEGER or DOUBLE |
| GETDATE Restituisce la data e l'ora correnti nel fuso orario della sessione corrente (UTC per impostazione predefinita). Le parentesi sono obbligatorie. |
GETDATE() | TIMESTAMP |
| INTERVAL_CMP Confronta due intervalli e restituisce |
INTERVAL_CMP (interval1, interval2) | INTEGER |
| LAST_DAY Restituisce la data dell'ultimo giorno del mese che contiene date. |
LAST_DAY(date) | DATE |
| MONTHS_BETWEEN Restituisce il numero di mesi tra due date. |
MONTHS_BETWEEN (date, date) | FLOAT8 |
| NEXT_DAY Restituisce la data della prima istanza di day posteriore a date. |
NEXT_DAY (date, day) | DATE |
| SYSDATE Restituisce la data e l'ora nel formato UTC per l'inizio della transazione corrente. |
SYSDATE | TIMESTAMP |
| TIMEOFDAY Restituisce il giorno della settimana, la data e l'ora attuali nel fuso orario della sessione corrente (UTC per impostazione predefinita) come un valore di stringa. |
TIMEOFDAY() | VARCHAR |
| TIMESTAMP_CMP Confronta due timestamp e restituisce |
TIMESTAMP_CMP (timestamp1, timestamp2) | INTEGER |
| TIMESTAMP_CMP_DATE Confronta un timestamp con una data e restituisce |
TIMESTAMP_CMP_DATE (timestamp, date) | INTEGER |
| TIMESTAMP_CMP_TIMESTAMPTZ Confronta un timestamp con un timestamp con fuso orario e restituisce |
TIMESTAMP_CMP_TIMESTAMPTZ (timestamp, timestamptz) | INTEGER |
| TIMESTAMPTZ_CMP Confronta due timestamp con i valori di fuso orario e restituisce |
TIMESTAMPTZ_CMP (timestamptz1, timestamptz2) | INTEGER |
| TIMESTAMPTZ_CMP_DATE Confronta il valore di un timestamp con fuso orario con una data e restituisce |
TIMESTAMPTZ_CMP_DATE (timestamptz, date) | INTEGER |
| TIMESTAMPTZ_CMP_TIMESTAMP Confronta un timestamp con fuso orario con un timestamp e restituisce |
TIMESTAMPTZ_CMP_TIMESTAMP (timestamptz, timestamp) | INTEGER |
| TIMEZONE Restituisce un timestamp per il fuso orario e il valore di timestamp specificati. |
TIMEZONE ('timezone' { timestamp | timestamptz ) | TIMESTAMP o TIMESTAMPTZ |
| TO_TIMESTAMP Restituisce un timestamp con fuso orario per il formato di timestamp e di fuso orario specificati. |
TO_TIMESTAMP ('timestamp', 'format') | TIMESTAMPTZ |
| TRUNC Tronca un timestamp e restituisce una data. |
TRUNC(timestamp) | DATE |
Nota
I secondi intercalari non vengono presi in considerazione nei calcoli del tempo trascorso.
Funzioni di data e ora nelle transazioni
Quando esegui le funzioni seguenti in un blocco di transazione (BEGIN … END), la funzione restituisce la data o l'ora di inizio della transazione corrente e non dell'istruzione corrente.
-
SYSDATE
-
TIMESTAMP
-
CURRENT_DATE
Le funzioni seguenti restituiscono sempre la data e l'ora di inizio dell'istruzione corrente, anche quando sono in un blocco di transazione.
-
GETDATE
-
TIMEOFDAY
Funzioni solo sul nodo principale obsolete
Le funzioni di data seguenti sono obsolete in quanto vengono eseguite solo sul nodo principale. Per ulteriori informazioni, consulta Nodo principale: solo funzioni.
-
AGE. Usare invece Funzione DATEDIFF.
-
CURRENT_TIME. Utilizza invece Funzione GETDATE o SYSDATE.
-
CURRENT_TIMESTAMP. Utilizza invece Funzione GETDATE o SYSDATE.
-
LOCALTIME. Utilizza invece Funzione GETDATE o SYSDATE.
-
LOCALTIMESTAMP. Utilizza invece Funzione GETDATE o SYSDATE.
-
ISFINITE
-
NOW. Utilizza invece Funzione GETDATE o SYSDATE. Se utilizzi la funzione NOW all’interno di una vista materializzata, viene impostato il timestamp della creazione della vista materializzata, anziché il timestamp corrente.