Number formatting

Поиск
Список
Период
Сортировка
От Andy Shellam
Тема Number formatting
Дата
Msg-id 448B0C26.8070007@andycc.net
обсуждение исходный текст
Ответы Re: Number formatting  (Michael Fuhr <mike@fuhr.org>)
Список pgsql-admin
Hi,

Simple question, which is probably something obvious I'm missing.  If
anyone can tell me better how to do what I'm doing, go for it!

This is for a billing system, and I want PostgreSQL to generate unique
reference numbers for each invoice that is something more meaningful
than 1, 2, 3 etc.

So, what I'm trying to do is use a primary key to generate invoice
numbers such as "INV0000001", "INV0000002" etc.  Obviously a sequence
generates the increments, but when I try formatting it, it adds a space
at the beginning of the number.  Here's the "default value" for the
primary key field:

(('INV'::text ||
to_char((nextval('customer_customer_id_seq'::regclass))::integer,
'0000000'::text)))::character varying

However what I end up with is: "INV 0000012"

If I take the "INV" portion out, and simply try and format the sequence
generated, I still get the space added: " 0000013"

(to_char((nextval('customer_customer_id_seq'::regclass))::integer,
'0000000'::text))::character varying

The field is defined as a varchar(10), which allows the 3-digit "INV",
and 7 numeric digits.  I have tried defining it as char(10) but still
get the same.

This is on PostgreSQL 8.1.4, Windows XP.

Thanks

Andy

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

Предыдущее
От: Christopher Browne
Дата:
Сообщение: Re: problem with installing postgresql
Следующее
От: Tom Lane
Дата:
Сообщение: Re: problem with installing postgresql