Hvordan finne feil datoer på Oracle SQL
Datoer er noen ganger inn i en database i feil format. Dette vil resultere i falske data som er vist i rapporter. Før løse problemet med å fikse feil formatert datoene du trenger for å løse problemet der datoene blir skrevet inn i feil format.
Bruksanvisning
1 Åpne Oracle editor.
2 Skriv inn følgende kode, noe som skaper de tillatte formater fra den innebygde databasen tabell kalt "dual":
med d som (velg 'o1 / 13/2009' dt fra dual
union alle velger '1/12/2008' fra dual
union all velg '12 / 12/2008 'fra dual
union all velg '02 / 22/2010 "fra dual
)
3 Lag SQL-setningen nedenfor. Dette bruker en regedit uttrykk for å matche formatene beskrevet i forrige trinn med formatet på datoer i databasen tabellen valgt.
velg dt,
sak
når regexp_like (dt, '(0 [1-9] | 1 [012]) - /.- /.\d\d')
deretter 'gyldig'
else 'ugyldig' end validd
fra
d
Erstatt "d" med databasen tabellen hvor datoene er lagret.
4 Kjør koden opprettet i forrige trinn, og det vil returnere en liste over datoer i en kolonne som dette:
DT
o1 / 13/2009
I en andre kolonne, vil den returnere om de er gyldige eller ugyldige som dette:
VALIDD
ugyldig