Re: select to_number('1,000', '999,999');

Поиск
Список
Период
Сортировка
От Stephan Szabo
Тема Re: select to_number('1,000', '999,999');
Дата
Msg-id 20041122053847.U88957@megazone.bigpanda.com
обсуждение исходный текст
Ответ на Re: select to_number('1,000', '999,999');  (David Schweikert <dws@ee.ethz.ch>)
Ответы Re: select to_number('1,000', '999,999');  (Stephan Szabo <sszabo@megazone.bigpanda.com>)
Re: select to_number('1,000', '999,999');  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
On Mon, 22 Nov 2004, David Schweikert wrote:

> On Sun, Nov 21, 2004 at 20:10:08 -0500, Tom Lane wrote:
> > I'm not entirely convinced this is a bug.  I get the right answer from
> >
> > regression=# select to_number('001,000', '999,999') ;
> >  to_number
> > -----------
> >       1000
> > (1 row)
> >
> > It's arguable that to_number() should throw an error when the input
> > doesn't match the format, but right now it doesn't ...
>
> It seems strange to me that to_char(1000,'999,999') works (it returns
> 1,000), but the reverse doesn't.
>
> I want to convert a formatted number with group separators, but I don't
> know how many digits it has: should I count the digits myself and adapt
> the mask (which is a customization and thus entered by the user)?

No, but I think you're supposed to use FM in such cases.

select to_number(1000, 'FM999,999');

В списке pgsql-bugs по дате отправления:

Предыдущее
От: "PostgreSQL Bugs List"
Дата:
Сообщение: BUG #1327: Compare column of varchar FAILURE!
Следующее
От: Stephan Szabo
Дата:
Сообщение: Re: select to_number('1,000', '999,999');