From: | Bruno Wolff III <bruno(at)wolff(dot)to> |
---|---|
To: | Chadwick Boggs <chadwickboggs(at)yahoo(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Arbitrary precision modulo operation |
Date: | 2004-04-26 17:42:26 |
Message-ID: | 20040426174226.GE18684@wolff.to |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Mon, Apr 26, 2004 at 13:30:17 -0400,
Chadwick Boggs <chadwickboggs(at)yahoo(dot)com> wrote:
> Example of wrong results from modulo operation of arbitrary precision
> numbers:
>
> # select '123456789012345678901234567890'::numeric % 123;
> ?column?
> ----------
> -6
> (1 row)
>
> # select mod('123456789012345678901234567890'::numeric, 123);
> mod
> -----
> -6
> (1 row)
>
> The correct result (at least according to another, unnamed, RDBMS):
>
> > select '123456789012345678901234567890' % 123;
> +----------------------------------------+
> | '123456789012345678901234567890' % 123 |
> +----------------------------------------+
> | 58 |
> +----------------------------------------+
> 1 row in set (0.00 sec)
I checked this with bc and I got -6 (and 117) as being correct. I would
think the other database was wrong.
It wouldn't happen to be MYSQL would it?
From | Date | Subject | |
---|---|---|---|
Next Message | Stephan Szabo | 2004-04-26 18:06:11 | Re: Index on computed column |
Previous Message | Andrew Ayers | 2004-04-26 17:41:20 | Re: Installation Postgresql |