Em 19 de julho de 2012 16:09, Flavio Henrique Araque Gurgel <
fla...@4linux.com.br> escreveu:

>
> On 19-07-2012 16:05, Vinicius Santos wrote:
> >
> >     SELECT sua_coluna/1.00000000000000 FROM sua_tabela WHERE
> suas_condições;
> >
> >     Ajustando para sair o resultado da linha que você está suspeitando?
> >
> >
> > Fiz assim:
> >
> > SELECT valor FROM nova_tabela:
> > --------------------------------------------------
> > 355.5500
> > 355.5500
> >
> > Depois:
> >
> > SELECT valor/1.00000000000000 FROM nova_tabela:
> > --------------------------------------------------
> > 355.5500000000000114
> > 355.5500000000000114
>
> Logo, o PostgreSQL está agindo corretamente.
> Note que o valor armazenado é o que você viu acima.
> O que está aparecendo no SELECT seco é um arredondamento apenas na
> visualização do valor.
>
> Seu sistema deve ter inserido os dígitos extras.
>
> Não há correção no PostgreSQL nenhuma pro comportamento que você está
> obtendo, está tudo *absolutamente normal*.
>
>
Creio que não esteja correto não, porque o tipo de dado da coluna dele é
NUMERIC(14,4) e parece que ele não está respeitando essa precisão... fiz
alguns testes aqui e não consegui reproduzir aquele comportamento:


bdteste=# INSERT INTO numeros (valor) VALUES (355.000000014),
(235.67000000011);
INSERT 0 2
bdteste=# SELECT * FROM numeros;
  valor
----------
 261.6100
 355.5500
 355.0000
 235.6700
(4 rows)

bdteste=# select valor, valor/1.00000000000000 from numeros;
  valor   |       ?column?
----------+----------------------
 261.6100 | 261.6100000000000000
 355.5500 | 355.5500000000000000
 355.0000 | 355.0000000000000000
 235.6700 | 235.6700000000000000
(4 rows)

bdteste=# \d numeros
           Table "public.numeros"
 Column |     Type      |     Modifiers
--------+---------------+--------------------
 valor  | numeric(14,4) | not null default 0


Como a precisão da coluna "valor" é 4 ele "trunca" os decimais na quarta
casa... e isso parece não estar ocorrendo com o Vinicius.


Att,

-- 
Fabrízio de Royes Mello
Consultoria/Coaching PostgreSQL
>> Blog sobre TI: http://fabriziomello.blogspot.com
>> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
>> Twitter: http://twitter.com/fabriziomello
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a