Oracle streng til dato

Oracle Streng Til Dato



Denne vejledning viser dig, hvordan du bruger to_date-funktionen til at konvertere en given inputstreng til en datodatatype.

Orale to_date() Funktion

Funktionen to_date() i Oracle giver dig mulighed for at caste en given strengdato literal ind i en datotype.







Funktionens syntaks:



TO_DATE(char [, fmt [, 'nlsparam' ] ])

Funktionen accepterer tre hovedargumenter:



  • Det første argument er char, som definerer inputdatostrengen. Indgangsværdien kan være CHAR, VARCHAR2, NCHAR eller NVARCHAR2.
  • fmt – Den anden parameter er fmt. Denne parameter definerer dato- og tidsmodelformatet for inputværdien. Du kan springe denne parameter over, hvis inputværdien følger standardformatet DD-MON-YY, for eksempel 01-JAN-2022.

Hvis formatet er juliansk, repræsenteret som J, skal inputværdien være en heltalstype.





Indtastningsværdien kan omfattes i følgende formater:



  • nlsparam – Til sidst bruges parameteren nlsparam til at angive sproget for data og måned i strengen. Formatet er NLS_DATE_FORMAT = sprog. Oracle vil som standard bruge standardsproget for din session.

Eksempel på funktionsbrug

Følgende er eksempler på to_date-funktionen i Oracle-databasen:

Eksempel 1 – Grundlæggende konvertering

Eksemplet nedenfor viser, hvordan man bruger to_date-funktionen til at konvertere en given tegnstreng til en dato.

select to_date('10. januar 2023', 'Måned dd, ÅÅÅÅ')
fra dobbelt;

I dette tilfælde konverterer vi den givne datostreng til en datotype ved at bruge formatet Måned dd, ÅÅÅÅ.

Den resulterende værdi vises:

TO_DATE('JANUARY102023','MONTHDD,YYYY')
2023-01-10

Eksempel 2 – Konverter dato og tid til datotype

Det andet eksempel illustrerer, hvordan man konverterer en given tegnstreng til dato.

vælg to_date('10. januar 2023, 1:03', 'Måned dd, ÅÅÅÅ, HH:MI P.M.')
fra dobbelt;[/cc]

I dette tilfælde skal vi angive tidsformatet som HH:MI P.M.

Det resulterende output er som vist:

TO_DATE('JANUARY10,2023,1:03','MONTHDD,YYYY,HH:MIP.M.')
10-01-2023 01:03:00

Eksempel 3 – Angivelse af sprogparameteren

Overvej eksemplet nedenfor, der viser, hvordan man bruger to_date-funktionen med parameteren nls_date_language.

select to_date('10. januar 2023, 1:03', 'D. Måned, ÅÅÅÅ, HH:MI P.M.', 'nls_date_language=amerikansk')
fra dobbelt;

Dette skulle returnere værdien:

10-01-2023 01:03:00

Når vi ændrer sessionssproget som:

alter session set nls_territory = 'Australien';

Konverter tiden.

select to_date('10. januar 2023, 1:03', 'D. Måned, ÅÅÅÅ, HH:MI P.M.', 'nls_date_language=amerikansk')
fra dobbelt;

Konklusion

I dette indlæg udforsker vi brugen af ​​to_date-funktionen i Oracle-databasen til at konvertere en given inputdato bogstavelig til datotype.