Sintassi Netezza SQL per convertire il formato numerico AAAAMMGG in data
Domanda
Abbiamo una tabella Netezza che contiene le date memorizzate in un formato AAAAMMGG numerico (ad es. 20090731).
Qual è la migliore sintassi di Netezza da usare per convertirla in formato data?
ad esempio
SELECT somefunction(20090731) as NZDATE
Soluzione
Il modo più semplice per convertire il numero in data sarebbe
select date(to_char(20090731,'99999999')) as Number_As_DATE;
Altri suggerimenti
Puoi usarlo perché è il migliore.
SELECT TO_DATE('20090731','YYYYMMDD') as NZDATE
to_date (sk_dim_time ,'YYYYMMDD')
I miei sforzi sono stati vanificati in origine a causa di date non valide. Il codice seguente funziona fintanto che lo avvolgi in una dichiarazione per catturare date non valide.
select to_date(substring(20090731 from 1 for 8),'YYYYMMDD') as NZDATE
Ovviamente 20090731
dovrebbe essere sostituito con il nome della variabile numerica.
select to_date(20090731,'YYYYMMDD') as Number_As_DATE
Funzionerà senza convertirsi in char.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow