Oracle String to Date

Oracle String To Date



Tento tutoriál vám ukáže, ako použiť funkciu to_date na konverziu daného vstupného reťazca na dátový typ dátumu.

Funkcia Orale to_date().

Funkcia to_date() v Oracle vám umožňuje pretypovať daný reťazcový dátumový literál do typu dátumu.







Syntax funkcie:



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

Funkcia akceptuje tri hlavné argumenty:



  • Prvým argumentom je char, ktorý definuje vstupný dátumový reťazec. Vstupná hodnota môže byť CHAR, VARCHAR2, NCHAR alebo NVARCHAR2.
  • fmt – Druhý parameter je fmt. Tento parameter definuje formát modelu dátumu a času vstupnej hodnoty. Tento parameter môžete preskočiť, ak má vstupná hodnota predvolený formát DD-MON-RR, napríklad 01-JAN-2022.

Ak je formát Julian, reprezentovaný ako J, potom vstupná hodnota musí byť typu celé číslo.





Vstupná hodnota môže byť zahrnutá v nasledujúcich formátoch:



  • nlsparam – Nakoniec sa parameter nlsparam používa na určenie jazyka pre údaje a mesiac v reťazci. Formát je NLS_DATE_FORMAT = jazyk. Oracle predvolene použije predvolený jazyk vašej relácie.

Príklad použitia funkcie

Nasledujú príklady funkcie to_date v databáze Oracle:

Príklad 1 – Základná konverzia

Príklad nižšie ukazuje, ako použiť funkciu to_date na konverziu daného znakového reťazca na dátum.

select to_date('10. január 2023', 'Dd. mesiac, RRRR')
z duálneho;

V tomto prípade konvertujeme daný dátumový reťazec na typ dátumu pomocou formátu dd mesiac, RRRR.

Výsledná hodnota sa zobrazí:

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

Príklad 2 – Prevod dátumu a času na typ dátumu

Druhý príklad ilustruje, ako previesť daný reťazec znakov na dátum.

select to_date(‘10. január 2023, 1:03’, ‘Dd. mesiac, RRRR, HH:MI P.M.’)
z duálneho;[/cc]

V tomto prípade musíme zadať formát času ako HH:MI P.M.

Výsledný výstup je takýto:

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

Príklad 3 – Určenie parametra jazyka

Zvážte príklad nižšie, ktorý demonštruje, ako používať funkciu to_date s parametrom nls_date_language.

select to_date('10. január 2023, 1:03', 'Dd. mesiac, YYYY, HH:MI P.M.', 'nls_date_language=American')
z duálneho;

Toto by malo vrátiť hodnotu:

2023-01-10 01:03:00

Keď zmeníme jazyk relácie takto:

alter session set nls_territory = 'Austrália';

Preveďte čas.

select to_date('10. január 2023, 1:03', 'Dd. mesiac, YYYY, HH:MI P.M.', 'nls_date_language=American')
z duálneho;

Záver

V tomto príspevku skúmame použitie funkcie to_date v databáze Oracle na konverziu daného vstupného dátumu doslovne na typ dátumu.