Re: exclusion constraint for ranges of IP
От | Herouth Maoz |
---|---|
Тема | Re: exclusion constraint for ranges of IP |
Дата | |
Msg-id | 821FD4E6-0ACA-479F-81C6-09EA6298FD16@unicell.co.il обсуждение исходный текст |
Ответ на | Re: exclusion constraint for ranges of IP (Jasen Betts <jasen@xnet.co.nz>) |
Список | pgsql-sql |
On 23/08/2011, at 13:31, Jasen Betts wrote: > On 2011-08-23, Herouth Maoz <herouth@unicell.co.il> wrote: > >> EXCLUDE USING GIST ( customer_id WITH =, is_default WITH AND ) > > >> Basically, each customer can have several rows in this table, but only = >> one per customer is allowed to have is_default =3D true. Is this exclude = >> constraint correct? > > I don't really understand exclude, but instead of EXCLUDE... I would do > > CREATE UNIQUE INDEX "invoice_definitions-unique-default" > ON invoice_definitions(customer_id) WHERE is_default; > > Which would create a smaller (and probably faster) BTREE index > containing only the rows with is_default true. This is an interesting concept. It's a different angle on the same condition. > > There seems to be no way to create this in the create-table > command. (using 8.4 here) Yes, it's curious that exclude constraints are the only ones which are allowed to be partial in a table definition. Thank you. Herouth
В списке pgsql-sql по дате отправления: