How to generate unique invoice numbers for each day

From: "Andrus Moor" <kobruleht2(at)hot(dot)ee>
To: <pgsql-general(at)postgresql(dot)org>
Subject: How to generate unique invoice numbers for each day
Date: 2011-01-15 18:13:11
Message-ID: FA8921E748894F6DB354E99F5220D753@server
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Invoice numbers have format yymmddn

where n is sequence number in day staring at 1 for every day.

command

SELECT COALESCE(MAX(nullif(substring( substring(tasudok from 7),
'^[0-9]*'),'')::int),0)+1
FROM invoice
where date= ?invoicedate

is used to get next free invoice number if new invoice is saved.

If multiple invoices are saved concurrently from different processes, they
will probably get same number.

How to get unique invoice number for some day in 8.1+ when multiple users
create new invoices ?

Andrus.

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Jorge Godoy 2011-01-15 18:41:08 Re: How to generate unique invoice numbers for each day
Previous Message Jaiswal Dhaval Sudhirkumar 2011-01-15 18:07:14 Re: HA solution