Conversione data - %TODATE

Utilizzare questa funzione quando si desidera che Replica CDC converta un valore di tipo di dati numerico o carattere in un tipo di dati data/ora durante la replica.

È possibile convertire le date da valori numerici compressi, numerici a zonatura o da formati di caratteri senza secolo a valori data / ora o di tipo carattere con secolo.
Nota: %TODATE può essere utilizzato solo per creare date senza informazioni sull'era incluse.

Sintassi

%TODATE(date, type)

Parametri

Data
Specifica la data di input.
Se data è il nome di una colonna contenente una stringa di caratteri, la lunghezza di tale stringa deve corrispondere alla lunghezza per il formato specificato dal valore type .
Tenere presenti le seguenti considerazioni sui valori restituiti da questa funzione:
  • La lunghezza indicata nella seguente tabella rappresenta il numero di cifre dopo che i separatori sono stati rimossi
  • Se si specifica NULL per data, questa funzione restituirà NULL.
  • Se si specifica 0 per data, questa funzione restituisce 1901-01-01.
  • Se si specifica una DATE per data, questa funzione restituisce una DATE
Nota: se si specificano i caratteri - e / , questi caratteri vengono rimossi prima che il valore venga valutato da CDC Replication.
Tipo di dati del valore date Valore tipo Lunghezza di data Formato di input
Numerico *AMG 6 cifre AAMMGG
Carattere *AMG 6 cifre AA - MM - GG o AA/MM/GG
Numerico *MGG 6 cifre MMGGAA
Carattere *MGG 6 cifre MM - GG - AA o MM/GG/AA
Numerico *DMY 6 cifre GGMMAA
Carattere *DMY 6 cifre GG - MM - AA o GG/MM/AA
Numerico *AAMG 8 cifre CAAMMGG
Carattere *AAMG 8 cifre CCYY - MM - DD o CCYY/MM/DD
Numerico *AMG 7 cifre AAAAMMGG
Numerico *LUG 5 cifre AAJJ
Numerico *CJUL 6 cifre AAAJJ
Numerico *LUG 7 cifre CYYJJ
tipo
Specifica il formato della data di input. È necessario racchiudere i valori di questo parametro tra virgolette.
*AMG
Specifica che il formato di input è yymmdd.
*MGG
Specifica che il formato di input è mmggaa.
*DMY
Specifica che il formato di input è ddmmyy.
*AAMG
Specifica che il formato di input è ccyymmdd, dove cc rappresenta il secolo.
*AMG
Specifica che il formato di input è cyymmdd, dove c rappresenta il secolo. Il valore 0 per c rappresenta il XX secolo. Qualsiasi altro valore rappresenta il XXI secolo.
*LUG
Specifica il formato di input yyjjj, dove jjj rappresenta il numero di sequenza di un giorno nell'anno solare. jjj deve essere compreso tra 1, che rappresenta il 1° gennaio, e 366, che rappresenta il 31 dicembre in un anno bisestile. Per i valori jjj inferiori a 100, è necessario specificare lo zero iniziale o gli zeri. Ad esempio, la data giuliana del 4 febbraio è 035, che rappresenta il 35° giorno dell'anno.
Quando si imposta il tipo su *JUL, se si specifica un valore per yy compreso tra 40 e 99, la funzione %TODATE restituisce l'anno corrispondente nel XX secolo. Ad esempio, 1940. Se si specifica un valore per yy compreso tra 0 e 39, la funzione %TODATE restituisce l'anno corrispondente nel XXI secolo. Ad esempio, 2039.
*CJUL
Specifica che il formato di input è cyyjjj, dove c rappresenta il secolo. Il valore 0 per c rappresenta il XX secolo. Qualsiasi altro valore rappresenta il XXI secolo.
*LUG
Specifica che il formato di input è ccyyjjj, dove cc rappresenta il secolo.

Tipo di dati del risultato

Data nel formato ISO standard (International Organization for Standardization), ossia CCYY - MM - DD.

Esempi

Data di input (date) Formato di input (tipo) Risultato
760704 "*AMG" 1976-07-04 (4 luglio 1976)
04-07-76 "*AMG" 1976-07-04 (4 luglio 1976)
100195 "*MGG" 1995-10-01 (10 ottobre 1995)
000000 "*MGG" 1901-01-01 (1 gennaio 1901)
010768 "*DMY" 1968-07-01 (1 luglio 1968)
19560205 "*AAMD" 1956-02-05 (5 febbraio 1956)
5 febbraio 1956 "*AAMD" 1956-02-05 (5 febbraio 1956)
1100216 "*CYMD" 2010-02-16 (16 febbraio 2010)
95004 "*LUG" 1995-01-04 (4 gennaio 1995)
102032 "*CJUL" 2002-02-01 (2 febbraio 2002)
1991359 "*LUG" 1991-12-25 (25 dicembre 1991)