On Mon, 2005-10-03 at 16:36 -0300, Giovanni M. wrote:
> Yes! That did it, thanks for the help
>
> On 10/3/05, Tony Wasson <ajwasson@gmail.com> wrote:
> > On 10/3/05, Giovanni M. <drayah@gmail.com> wrote:
> > > Round and trunc dont provide the functionality I need.
> > >
> > > Say for example I have two values in a column of type numeric as follows:
> > > 23.455
> > > 12.300
> > >
> > > What I need to happen is stripping the "useless" zeros in the
> > > fractional part of numbers so 12.300 would become 12.3 and 23.455
> > > would stay the same
> > >
> > > Round and trunc can´t do this without me first checking if the number
> > > can indeed be "rounded" to a number without losing its precise value
> >
> > As a workaround, you could try using the trim function. You'd need to
> > cats your numbers to text strings, but it looks like it will drop
> > useless 0's for you.
> >
> > test=# SELECT trim(trailing 0 FROM '12.300'::TEXT)::NUMERIC;
> > rtrim
> > -------
> > 12.3
> > (1 row)
> >
>
>
> --
I also found simply casting the column as a float achieves the same
thing:
test=> select 23.510::numeric;
numeric
---------
23.510
test=> select 23.510::numeric::float;
float8
--------
23.51
Sven