Search Postgresql Archives

Re: any plans to support more rounding methods in sql?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160


> i just needed to round some numbers down to 4 decimal places but a quick search
> indicated that postgresql doesn't support all of the rounding methods so i had
> to write this dreadful function:
>
> create or replace function round_down_to_4_decimal_places(amount decimal(12,6))
> returns decimal(10,4) stable language sql as $$
...

That should be IMMUTABLE not STABLE.

> this is fine for my purposes but it's not generic to different numbers of decimal
> places and it's 26 times slower than the built-in round(v numeric, s int).
> strangely, a plpgsql version is much faster but it's still 11 times slower than
> a built-in version would be.
...
Yes, but is that speed really noticeable, or is it just a rounding error (ha ha ha!) 
compared to the total time of a query that uses these?

> are there any plans to support any other rounding methods natively?

Probably not; it would be up to you to champion them here first. First 
thing would be to demonstrate a clear use case. That may be hard, as 
I have no heard of anyone else needing these, and rare features that 
can be handled by extensions, user written functions, etc. are not 
likely to be added to core. But who knows, there may be a valid use case.

First thing I would do is try a wrapper to a Python or Perl function, 
mark it IMMUTABLE, and see just how slow it really is.

- -- 
Greg Sabino Mullane greg@xxxxxxxxxxxx
End Point Corporation http://www.endpoint.com/
PGP Key: 0x14964AC8 201201251316
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8
-----BEGIN PGP SIGNATURE-----

iEYEAREDAAYFAk8gRzEACgkQvJuQZxSWSsiFzgCfQdA/3sb8Y5eL6z59pR8EZQq7
ioYAoMjKXhrFlHjfSq/eSbvhKa1y+F+u
=swla
-----END PGP SIGNATURE-----



-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux