Função TO_DATE
TO_DATE converte uma data representada em uma string de caracteres para um tipo de dados DATE.
nota
TO_DATE não aceita strings de formato com Q (número do trimestre).
Sintaxe
TO_DATE(string, format)
TO_DATE(string, format, is_strict)
Argumentos
- string
-
Uma string a ser convertida.
- format
-
Um literal de string que define o formato da string de entrada, em termos de suas partes de data. Para obter uma lista dos formatos válidos de dia, mês e ano, consulte Strings de formato datetime.
- is_strict
-
Um valor booleano opcional que especifica se um erro é retornado se um valor de data de entrada estiver fora do intervalo. Quando is_strict é definido como
TRUE
, um erro será retornado se houver um valor fora do intervalo. Quando is_strict é definido comoFALSE
, que é o padrão, então os valores de estouro são aceitos.
Tipo de retorno
TO_DATE retorna uma DATE, dependendo do valor do format.
Se ocorrer falha na conversão no formato, um erro será gerado.
Exemplos
A instrução SQL a seguir converte a data 02 Oct 2001
em um tipo de dados de data.
select to_date('02 Oct 2001', 'DD Mon YYYY');
to_date ------------ 2001-10-02 (1 row)
A instrução SQL a seguir converte a string 20010631
em uma data.
select to_date('20010631', 'YYYYMMDD', FALSE);
O resultado é 1 de julho de 2001, porque há apenas 30 dias em junho.
to_date ------------ 2001-07-01
A seguinte instrução SQL converte a string 20010631
em uma data:
to_date('20010631', 'YYYYMMDD', TRUE);
O resultado é um erro porque há apenas 30 dias em junho.
ERROR: date/time field date value out of range: 2001-6-31