Re: BUG #3237: function to_char() returns wrong value - Mailing list pgsql-bugs

From Bruce Momjian
Subject Re: BUG #3237: function to_char() returns wrong value
Date
Msg-id 200704182123.l3ILN0C02607@momjian.us
Whole thread Raw
In response to BUG #3237: function to_char() returns wrong value  ("Robert wang" <robert.wang@eitec.com.tw>)
List pgsql-bugs
Robert wang wrote:
>
> The following bug has been logged online:
>
> Bug reference:      3237
> Logged by:          Robert wang
> Email address:      robert.wang@eitec.com.tw
> PostgreSQL version: 8.2
> Operating system:   Windows 2000 professional
> Description:        function to_char() returns wrong value
> Details:
>
> I run this following SQL command in pgAdminIII:
>
> Select to_char(12345,'00000')
>
> but it always returns ' 12345' (hex code: 20 31 32 33 34 35).It always adds
> one space char in the left side.
>
> I have to use another function substring() as followings to get my expected
> value.
>
> Select substring(to_char(12345,'00000'),from ' ' for 5)
>
> it exactly returns '12345' which I expect.

My guess is that the extra space is for the minus sign.  Use "FM" to
supress padding:

    test=> SELECT length(to_char(12345,'FM00000'));
     length
    --------
          5
    (1 row)


--
  Bruce Momjian  <bruce@momjian.us>          http://momjian.us
  EnterpriseDB                               http://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

pgsql-bugs by date:

Previous
From: "Robert wang"
Date:
Subject: BUG #3237: function to_char() returns wrong value
Next
From: Magnus Hagander
Date:
Subject: Re: BUG #3232: Regression: pgsql server startup problem with encrypted partitions