Re: proposal: minscale, rtrim, btrim functions for numeric
Pavel Stehule <pavel.stehule@gmail.com>
From: Pavel Stehule <pavel.stehule@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>,
Marko Tiikkaja <marko@joh.to>, Dean Rasheed <dean.a.rasheed@gmail.com>,
Alvaro Herrera <alvherre@2ndquadrant.com>, Robert Haas <robertmhaas@gmail.com>
Date: 2019-11-11T14:47:37Z
Lists: pgsql-hackers
Attachments
- minscale-initial.patch (text/x-patch) patch
ne 10. 11. 2019 v 7:35 odesílatel Pavel Stehule <pavel.stehule@gmail.com> napsal: > > > so 9. 11. 2019 v 21:34 odesílatel Tom Lane <tgl@sss.pgh.pa.us> napsal: > >> Pavel Stehule <pavel.stehule@gmail.com> writes: >> > four years ago Marko Tiikkaja send a patch for numeric_trim functions. >> This >> > functions removed ending zeroes from numeric value. This is useful >> feature, >> > but there was not any progress on this patch. I think so this feature >> can >> > be interesting, so I would to revitalize this patch. >> >> > Original discussion >> > >> https://www.postgresql-archive.org/Add-numeric-trim-numeric-td5874444.html >> >> A more useful link is >> https://www.postgresql.org/message-id/flat/564D3ADB.7000808%40joh.to >> and the earlier discussion is at >> https://www.postgresql.org/message-id/flat/5643125E.1030605%40joh.to >> >> Re-reading that thread, I don't really think there's much support for >> anything beyond the minscale() function. The rest are just inviting >> confusion with string-related functions. And I really don't like >> establishing a precedent that btrim() and rtrim() are the same. >> > > I have to agree, so using trim, rtrim names is not best. On second hand, > probably to most often usage of minscale function will be inside expression > round(x, minscale(x)), so this functionality can be in core. A question is > a name. > > maybe to_minscale(numeric) ? > Here is a patch. It's based on Dean's suggestions. I implemented two functions - first minscale, second trim_scale. The overhead of second is minimal - so I think it can be good to have it. I started design with the name "trim_scale", but the name can be any other. Regards Pavel > > Regards > > Pavel > > >> regards, tom lane >> >
Commits
-
Add functions min_scale(numeric) and trim_scale(numeric).
- 20d6225d1656 13.0 landed