From: | Cleiton Luiz Domazak <cleitondomazak(at)gmail(dot)com> |
---|---|
To: | osvaldo(dot)kussama(at)gmail(dot)com, pgsql-pt-geral(at)lists(dot)postgresql(dot)org |
Subject: | Re: Converter VARCHAR para TIMESTAMP com milleseconds ERROR: date/time field value out of range |
Date: | 2018-10-09 12:24:25 |
Message-ID: | CAKx1C8HEVdx3k4r0zt6curRevNH8-T4HrVY2JgsHT6MxhNdfrQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-pt-geral |
On Tue, Oct 9, 2018 at 1:21 PM Osvaldo Kussama <osvaldo(dot)kussama(at)gmail(dot)com>
wrote:
> Em 09/10/2018, Cleiton Luiz Domazak<cleitondomazak(at)gmail(dot)com> escreveu:
> > Eu tenho um campo com o segundo VARCHAR "2018-07-05T16:14:27.1427" e eu o
> > converto para timestamp com o seguinte select:
> >
> > select last_run, to_char(to_timestamp(last_run,'yyyy-MM-dd HH24:mi:ss') -
> > interval '2 hour','yyyy-MM-dd"T"HH24:mi:ss"Z"') as new_last_run from
> > schedule_tasks;
> >
> > Até a versão 9.6.10 do PostgreSQL tudo corria bem, mas agora estamos
> > migrando para a versão 10.5 e esse erro começou a ocorrer. O mesmo
> acontece
> > na versão 11.
> >
> > Já fiz várias mudanças de datastyle e timezone e nada interfere,
> inclusive
> > todas as 3 versões testadas(9.6.10, 10.5 e 11) estavam com o mesmo conf.
> >
> > O que eu notei é que na 9.6, quando eu tenho um campo com milleseconds
> com
> > mais de 3 caracteres, o primeiro digito é adicionado aos segundos:
> > 2018-07-05T16:14:2*8.427*.
> >
> > Detalhe, se o campo tiver apenas 3 caracteres em milleseconds, funciona!
> >
> > Não sei se isso foi uma mudança realizada nas novas versões e terei que
> > lidar com isso, ou se trata de um bug.
> >
>
> Não entendi sua dúvida.
> Cada 1.000 milisegundos não corresponde exatamente a 1 segundo?
>
Exato, minha dúvida é, por que a partir da versão 10, esse comportamente
mudou, e ocorre um erro ao converter o mesmo valor.
Se o valor de MS for até 999 tudo certo, mas caso seja maior que 999, na
versão 10 ocorre erro.
>
> Osvaldo
>
From | Date | Subject | |
---|---|---|---|
Next Message | Arthur Nascimento | 2018-10-09 13:23:05 | Re: Converter VARCHAR para TIMESTAMP com milleseconds ERROR: date/time field value out of range |
Previous Message | Cleiton Luiz Domazak | 2018-10-09 10:00:30 | Converter VARCHAR para TIMESTAMP com milleseconds ERROR: date/time field value out of range |