Em 30/07/08, Celso<[EMAIL PROTECTED]> escreveu:
> Nós também utilizamos Numeric em todos os campos inteiros (para limitar a
> quantidade de dígitos que o usuário poderá informar) e decimais.
>
> Também não temos nenhum problema de performance.
>
> Não acredito que seja problema do Postgres tb.
>


Não há dúvida que as operações utilizando aritmética binária (int,
bigint, float, double) são mais rápidas que as que utilizam aritmética
decimal (decimal ou numeric). É uma questão de hardware.

Nem sempre é aconselhável utilizar aritmética binária em ponto
flutuante devido à precisão e arredondamento. Quando não se pode
conviver com esta aproximações devemos utilizar a aritmética decimal.
(isto vem desde a época do Cobol...)

Quanto à diferença de desempenho nunca ouvi falar de diferença tão
gritante quanto a relatada (600 vezes).

Quando devemos utilizar uma ou outra?
Se você pode conviver com as aproximações e eventuais pequenas
diferenças, como por exemplo cálculos científicos, então use float ou
double (é aquilo da matemática: um valor mais ou menos um desvio).
Se você necessita precisão, por exemplo com valores monetários nos
quais um centavo é motivo de encrenca com o contador, então utilize
numeric ou decimal.

Osvaldo
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a