Re: dividing money by money

Поиск
Список
Период
Сортировка
От Andy Balholm
Тема Re: dividing money by money
Дата
Msg-id DEC50D2F-6A1B-408E-89E0-F42556674553@balholm.com
обсуждение исходный текст
Ответ на Re: dividing money by money  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: dividing money by money  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
On Jul 15, 2010, at 7:25 PM, Tom Lane wrote:

> * I didn't like this bit in cash_numeric():
>
>     result->n_sign_dscale = NUMERIC_SIGN(result) | fpoint;
>
> Not only is that unwarranted chumminess with the implementation of
> numeric, it's flat-out wrong.  If the result isn't exactly the right
> number of digits (say, it's 12.33999999 instead of the desired 12.34)
> this just hides the extra digits, it doesn't make the result correct.
> The right way is to use numeric_round(), which not only sets the dscale
> where we want it but rounds off any inaccuracy that might have crept in
> from the division.

Sorry about that. Is there documentation anywhere for backend functions and types? I couldn't find any, so I just
lookedthrough numeric.h to see what looked like it might work. I didn't find numeric_round, since it's declared in
builtins.h.

В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Kevin Grittner"
Дата:
Сообщение: Re: imessages up-date
Следующее
От: Markus Wanner
Дата:
Сообщение: Re: imessages up-date