Oracle String tot nu toe

Oracle String Tot Nu Toe



Deze zelfstudie laat zien hoe u de to_date-functie gebruikt om een ​​gegeven invoertekenreeks om te zetten in een datumgegevenstype.

Orale to_date() Functie

Met de functie to_date() in Oracle kunt u een gegeven tekenreeks voor een letterlijke datum omzetten in een datumtype.







De syntaxis van de functie:



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

De functie accepteert drie hoofdargumenten:



  • Het eerste argument is de char, die de ingevoerde datumstring definieert. De invoerwaarde kan CHAR, VARCHAR2, NCHAR of NVARCHAR2 zijn.
  • fmt – De tweede parameter is fmt. Deze parameter definieert de datum/tijd-modelnotatie van de invoerwaarde. U kunt deze parameter overslaan als de invoerwaarde de standaardindeling van DD-MON-YY volgt, bijvoorbeeld 01-JAN-2022.

Als het formaat Julian is, weergegeven als J, dan moet de invoerwaarde een geheel getal zijn.





De invoerwaarde kan in de volgende formaten worden weergegeven:



  • nlsparam – Ten slotte wordt de parameter nlsparam gebruikt om de taal voor gegevens en maand in de tekenreeks op te geven. Het formaat is NLS_DATE_FORMAT = taal. Oracle zal standaard de standaardtaal van uw sessie gebruiken.

Voorbeeld Functiegebruik

Hieronder volgen voorbeelden van de functie to_date in de Oracle-database:

Voorbeeld 1 – Basisconversie

Het onderstaande voorbeeld laat zien hoe u de functie to_date kunt gebruiken om een ​​gegeven tekenreeks om te zetten in een datum.

select to_date('10 januari 2023', 'Maand dd, JJJJ')
van dubbel;

In dit geval converteren we de gegeven datumtekenreeks naar een datumtype met behulp van de indeling Maand dd, JJJJ.

De resulterende waarde wordt weergegeven:

TO_DATE('JANUARI102023','MAANDDD,JJJJ')
2023-01-10

Voorbeeld 2 – Converteer datum en tijd naar datumtype

Het tweede voorbeeld illustreert hoe een bepaalde tekenreeks naar een datum kan worden geconverteerd.

select to_date('10 januari 2023, 1:03', 'Maand dd, JJJJ, UU:MI P.M.')
van dubbel;[/cc]

In dit geval moeten we het tijdformaat specificeren als UU:MI P.M.

De resulterende uitvoer is zoals weergegeven:

TO_DATE('JANUARI10,2023,1:03','MAANDDD,JJJJ,UU:MIP.M.')
2023-01-10 01:03:00

Voorbeeld 3 – De taalparameter specificeren

Bekijk het onderstaande voorbeeld waarin wordt gedemonstreerd hoe de functie to_date moet worden gebruikt met de parameter nls_date_language.

select to_date('10 januari 2023, 1:03', 'Maand dd, JJJJ, UU:MI P.M.', 'nls_date_language=American')
van dubbel;

Dit zou de waarde moeten retourneren:

2023-01-10 01:03:00

Zodra we de sessietaal wijzigen als:

alter session set nls_territory = 'Australië';

Converteer de tijd.

select to_date('10 januari 2023, 1:03', 'Maand dd, JJJJ, UU:MI P.M.', 'nls_date_language=American')
van dubbel;

Conclusie

In dit bericht onderzoeken we het gebruik van de to_date-functie in de Oracle-database om een ​​gegeven invoerdatum letterlijk om te zetten in datumtype.