Funzione Oracle to_date

Funzione Oracle to_date

Le date e le stringhe sono alcuni dei tipi di dati più comuni con cui interagierai quando si lavora con i database. Pertanto, non sorprende che incontrerai uno scenario in cui è necessario convertire una determinata stringa letterale in un tipo di data.

Questo tutorial mira a mostrarti come utilizzare la funzione to_date () in Oracle per eseguirlo.

Funzione orale to_date ()

La funzione TO_DATE () in Oracle consente di convertire una data data di stringa letterale in un tipo di data.

La sintassi della funzione può essere espressa nello snippet di seguito:

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

La funzione accetta tre argomenti principali:

  1. CHAR - Il primo argomento è il CHAR, che definisce la stringa della data di input. Il valore di input può essere char, varchar2, nchar o nvarchar2.
  2. fmt - Il secondo parametro è questo parametro definisce il formato del modello DateTime del valore di input. È possibile saltare questo parametro se il valore di input segue il formato predefinito di DD-Mon-Yy, ad esempio 01-JAN-2022.

Se il formato è julian, rappresentato come J, allora il valore di input deve essere un tipo intero.

Il valore di input può essere composto dai seguenti formati.

Puoi esplorare il nostro tutorial sulla formattazione della data Oracle per saperne di più sui vari formati di dati.

C. nlsparam - Infine, il parametro NLSParam viene utilizzato per specificare la lingua per i dati e il mese nella stringa. Il formato è nls_date_format = lingua. Tieni presente che questo è un parametro opzionale e Oracle sarà impostata predefinita alla lingua predefinita della sessione.

Esempio di utilizzo della funzione

Di seguito sono riportati esempi della funzione TO_DATE nel database Oracle:

Esempio 1 - Conversione di base

L'esempio seguente dimostra come utilizzare la funzione TO_DATE per convertire una determinata stringa di carattere in una data.

Seleziona To_Date ('10 gennaio 2023', 'Month DD, YYYY')
dal doppio;

In questo caso, convertiamo la stringa data data in un tipo di data usando il mese DD, YYYY FORMAT.

Viene mostrato il valore risultante:

To_Date ('gennaio102023', 'Monthdd, Yyyy')
2023-01-10

Esempio 2 - Convert Data e ora fino alla data Tipo

Il secondo esempio illustra come convertire una determinata stringa di caratteri.

Seleziona To_Date ('10 gennaio 2023, 1:03', 'Month DD, YYYY, HH: MI P.M.')
dal doppio;

In questo caso, dobbiamo specificare il formato temporale come hh: mi p.M.

L'output risultante è come mostrato:

To_Date ('gennaio10,2023,1: 03', 'Monthdd, Yyyy, HH: MIP.M.')
2023-01-10 01:03:00

Esempio 3 - Specificare il parametro del linguaggio

Considera l'esempio seguente che dimostra come utilizzare la funzione TO_DATE con il parametro NLS_DATE_LANGAGE.

Seleziona To_Date ('10 gennaio 2023, 1:03', 'Month DD, YYYY, HH: MI P.M.',' nls_date_language = americano ')
dal doppio;

Questo dovrebbe restituire il valore:

2023-01-10 01:03:00

Una volta che cambiamo la lingua della sessione come:

Alter Session set nls_territory = 'Australia';

Convertire il tempo.

Seleziona To_Date ('10 gennaio 2023, 1:03', 'Month DD, YYYY, HH: MI P.M.',' nls_date_language = americano ')
dal doppio;

Conclusione

In questo post, esploriamo l'utilizzo della funzione TO_DATE nel database Oracle per convertire una data data di input letterale fino alla data Tipo.