Re: Just comments about math

From: "Andrew G(dot) Hammond" <drew(at)xyzzy(dot)dhs(dot)org>
To: Edipo Elder Fernandes de Melo <edipoelder(at)ig(dot)com(dot)br>, pgsql-sql(at)postgresql(dot)org
Subject: Re: Just comments about math
Date: 2001-12-10 15:12:34
Message-ID: E16DS6k-0000ay-00@xyzzy.lan.internal
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 2001 December 7 12:34 pm, Edipo Elder Fernandes de Melo wrote:

> =# select (3+0.2*707/80)*80;
> ?column?
> ----------
> 381.4
>
> =# SELECT 80*(3+(707/80)*0.2);
> ?column?
> ----------
> 368
>
> Answer: "select 707/80;" returns 8, while "select 707/80::float"
> returns 8.8375.

SELECT 707.0/80; --> 8.8375

In your first expression, you change type to floating point in your first
operation, but in your second expression you don't change type until the
second to last operation. Integer division always returns an integer result,
even when it's not the most mathematically intuitive way to do things.

- --
Andrew G. Hammond mailto:drew(at)xyzzy(dot)dhs(dot)org http://xyzzy.dhs.org/~drew/
56 2A 54 EF 19 C0 3B 43 72 69 5B E3 69 5B A1 1F 613-389-5481
5CD3 62B0 254B DEB1 86E0 8959 093E F70A B457 84B1
"To blow recursion you must first blow recur" -- me
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iEYEARECAAYFAjwU0OcACgkQCT73CrRXhLFZBwCgjBrPcSCzGKkf91KEstX4F68G
SbcAniakO7mr044HoJtegKn8vdX/gWfE
=PlV9
-----END PGP SIGNATURE-----

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Nick Fankhauser 2001-12-10 18:10:38 Re: anyone can help?
Previous Message Bruce Momjian 2001-12-10 10:33:01 Re: Trigger for logging stuff...