Datas e strings são alguns dos tipos de dados mais comuns com os quais você interagirá ao trabalhar com bancos de dados. Portanto, não é surpresa que você encontre um cenário em que precise converter uma determinada string literal em um tipo de data.
Este tutorial tem como objetivo mostrar como usar a função to_date () no Oracle para executar isso.
Função orale to_date ()
A função to_date () no Oracle permite converter uma determinada string date literal em um tipo de data.
A sintaxe da função pode ser expressa no trecho abaixo:
To_date (char [, fmt [, 'nlsparam']])
A função aceita três argumentos principais:
Se o formato for juliano, representado como j, o valor de entrada deve ser do tipo inteiro.
O valor de entrada pode ser composto pelos seguintes formatos.
Você pode explorar nosso tutorial sobre a formatação do Oracle Date para saber mais sobre os vários formatos de dados.
c. nlsparam - Finalmente, o parâmetro nlsparam é usado para especificar o idioma para dados e mês na string. O formato é nls_date_format = idioma. Lembre -se de que este é um parâmetro opcional, e o Oracle padrão no idioma padrão da sua sessão.
Exemplo de uso da função
A seguir, são apresentados exemplos da função to_date no banco de dados Oracle:
Exemplo 1 - Conversão básica
O exemplo abaixo demonstra como usar a função to_date para converter uma determinada string de caracteres em uma data.
Selecione TO_DATE ('10 de janeiro de 2023', 'Mês DD, AAAA')
de dual;
Nesse caso, convertemos a string de data fornecida em um tipo de data usando o Formato do mês DD, AAAA.
O valor resultante é mostrado:
To_date ('janeiro102023', 'Menshdd, AAA')
2023-01-10
Exemplo 2 - Converter Data e Hora para Data Tipo
O segundo exemplo ilustra como converter uma determinada string de personagem até o momento.
Selecione TO_DATE ('10 de janeiro de 2023, 1:03', 'Mês DD, AAA, HH: Mi P.M.')
de dual;
Nesse caso, precisamos especificar o formato de tempo como hh: mi p.M.
A saída resultante é como mostrado:
To_date ('Janeiro 10.2023,1: 03', 'Mês, AAA, HH: MIP.M.')
2023-01-10 01:03:00
Exemplo 3 - especificando o parâmetro de linguagem
Considere o exemplo abaixo, demonstrando como usar a função to_date com o parâmetro NLS_DATE_LANGUAGE.
Selecione TO_DATE ('10 de janeiro de 2023, 1:03', 'Mês DD, AAA, HH: Mi P.M.',' nls_date_language = americano ')
de dual;
Isso deve retornar o valor:
2023-01-10 01:03:00
Uma vez que mudamos o idioma da sessão como:
Alter Session Set NLS_territory = 'Austrália';
Converter o tempo.
Selecione TO_DATE ('10 de janeiro de 2023, 1:03', 'Mês DD, AAA, HH: Mi P.M.',' nls_date_language = americano ')
de dual;
Conclusão
Neste post, exploramos o uso da função to_date no banco de dados Oracle para converter uma determinada data de entrada literal até o tipo de data.