Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: decimal precision to string

Re: decimal precision to string

From: Thorsten Kettner <thorsten.kettner_at_web.de>
Date: 8 May 2007 03:01:22 -0700
Message-ID: <1178618482.138754.250020@y80g2000hsf.googlegroups.com>


On 7 Mai, 22:06, Mark D Powell <Mark.Pow..._at_eds.com> wrote:
> On May 7, 3:52 pm, jobs <j..._at_webdos.com> wrote:
> > function output is number and produces things like this
>
> > 100
> > 19.95
> > 19.0005
> > .00625
> > 3.1
>
> > I need outputs to be reformated to format out into char(5), no decimal
> > point rounded to hundreth decial.. looking like this?
> > 10000
> > 01995
> > 01900
> > 00001
> > 00310
>
> Try something like:
> select to_char(round(19.0005 * 100, 3),'00009') from dual;
>
> TO_CHA
> ------
> 01900
>
> though i am not sure I got the rounding right. I do not think your
> description of what you want and the example match up. All your
> results are the number * 100 except for the .00625 one.

Yes, he/she? wants all values multiplied by 100 rounded to integers.

As you've multiplied by 100 already, you would round(value,0) instead of round(value,3):

  select to_char(round(value * 100),'00009') from dual;

And if I am not mistaken to_char does the rounding anyhow if format's precision doesn't suffice. Hence

  select to_char(value * 100,'00009') from dual;

is all you need. Received on Tue May 08 2007 - 05:01:22 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US