Problema:
Você gostaria de converter uma string contendo uma data para a data do PostgreSQL tipo de dados.
Vamos converter uma string de data para a data tipo de dados em vez de seu texto atual tipo de dados.
Solução:
Aqui está o Exemplo 1 de como usar o
TO_DATE() função. Esta é a consulta que você escreveria:
SELECT TO_DATE('20020304', 'YYYYMMDD') AS new_date;
E aqui está o resultado da consulta:
| new_date |
|---|
| 2002-03-04 |
Vejamos o Exemplo 2 do
TO_DATE() função. Observe o formato de data ligeiramente diferente:
SELECT TO_DATE('2015/06/07', 'YYYY/MM/DD') AS new_date;
Segue o resultado da consulta:
| new_date |
|---|
| 2015-06-07 |
Discussão:
Use a função
TO_DATE() para converter um valor de texto contendo uma data para a data tipo de dados. Esta função recebe dois argumentos:- Um valor de data. Pode ser uma string (um valor de texto) ou uma coluna de texto contendo informações de data. Em nosso exemplo, usamos as strings
'20020304'e'2015/06/07'. - O formato de data de entrada. Em nosso exemplo, usamos
'YYYYMMDD'e'YYYY/MM/DD'. Observe que o formato de entrada é uma string.
O formato de entrada decide como o PostgreSQL processará os caracteres na string onde a data está armazenada. O especificador 'YYYY' como os primeiros quatro caracteres indica que eles representam um ano de 4 dígitos. Em seguida, 'MM' representa um mês de 2 dígitos e 'DD' um dia de 2 dígitos. Você pode encontrar uma lista de todos os especificadores na documentação do PostgreSQL.
No Exemplo 1, a data da string como ‘
20020304 ' foi convertido para a data '2002-03-04' (uma data tipo de dados. No Exemplo 2, a string '2015/06/07' foi convertido para a data '2015-06-07' . No segundo exemplo, usamos a barra / entre as partes da data para converter corretamente de uma string para a data tipo de dados.