Funzione EXTRACT

La funzione EXTRACT estrae campi (o calcola valori) da valori relativi a data ed ora e intervalli.

Il risultato è INTEGER per YEAR, MONTH, DAY, HOUR, MINUTE, DAYS, DAYOFYEAR, DAYOFWEEK, MONTHS, QUARTEROFYEAR, QUARTERS, WEEKS, WEEKOFYEAR e WEEKOFMONTH ma FLOAT per le estrazioni SECOND e BOOLEAN per le estrazioni ISLEAPYEAR. Se SourceDate è NULL, il risultato è NULL indipendentemente dal tipo di estrazione.

SINTASSI

EXTRACT estrae singoli campi da valori relativi alla data ed all'ora e da intervalli. E' possibile estrarre un campo solo se è presente nel valore relativo alla data ed all'ora specificato nel secondo parametro. Viene generato un errore runtime o al momento dell'analisi se il campo richiesto non esiste all'interno del tipo di dati.

La tabella riportata di seguito descrive le estrazioni supportate nella Versione 6.0:
Nota: Tutti i nuovi valori integer partono da 1.
Tabella 1.
Estrazione Descrizione
YEAR Anno
MONTH Mese
DAY Giorno
HOUR Ora
MINUTE Minuto
SECOND Secondo
DAYS Giorni rilevati tra il giorno 1 gennaio 0001 e SourceDate.
DAYOFYEAR Giorno dell'anno
DAYOFWEEK Giorno della settimana: Domenica = 1, Lunedì = 2, Martedì = 3, Mercoledì = 4, Giovedì = 5, Venerdì = 6, Sabato = 7.
MONTHS Mesi rilevati tra il giorno 1 gennaio 0001 e SourceDate.
QUARTEROFYEAR Trimestre dell'anno: Da gennaio a marzo = 1, da aprile a giugno = 2, da luglio a settembre = 3, da ottobre a dicembre = 4.
QUARTERS Trimestri rilevati tra il giorno 1 gennaio 0001 e SourceDate.
WEEKS Settimane rilevate tra il giorno 1 gennaio 0001 e SourceDate.
WEEKOFYEAR Settimana dell'anno
WEEKOFMONTH Settimana del mese
ISLEAPYEAR Indica se questo è un anno bisestile
Note:
  1. Una settimana è definita da domenica a sabato, non come qualsiasi serie di sette giorni consecutivi. Se necessario, è necessario convertire in uno schema di rappresentazione alternativo.
  2. L'epoch della data ed ora di origine è 1 gennaio 0001. Le date precedenti all'epoch non sono valide per questa funzione.
  3. Per il calcolo, viene utilizzato il calendario gregoriano.

Esempio

EXTRACT(YEAR FROM CURRENT_DATE)
e
EXTRACT(HOUR FROM LOCAL_TIMEZONE)
funzionano entrambi senza errori, ma
EXTRACT(DAY FROM CURRENT_TIME)
non viene eseguito.
EXTRACT (DAYS FROM DATE '2000-02-29')
calcola il numero di giorni rilevati dall'anno 1 a '2000-02-29' e
EXTRACT (DAYOFYEAR FROM CURRENT_DATE)
calcola il numero di giorni rilevati dall'inizio dell'anno corrente ma
EXTRACT (DAYOFYEAR FROM CURRENT_TIME)
non viene eseguito perché CURRENT_TIME non contiene informazioni relative alla data.
Concetti correlati
Panoramica di ESQL
Attività correlate
Sviluppo di ESQL
Riferimenti correlati
Diagrammi di sintassi: tipi disponibili
Funzioni ESQL relative a data ed ora
Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
ak05420_