| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | Alban Hertroys <alban(at)magproductions(dot)nl> |
| Cc: | Ottavio Campana <ottavio(at)campana(dot)vi(dot)it>, pgsql-general(at)postgresql(dot)org |
| Subject: | Re: questions about query design |
| Date: | 2007-03-22 15:11:01 |
| Message-ID: | 3098.1174576261@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Alban Hertroys <alban(at)magproductions(dot)nl> writes:
> Ottavio Campana wrote:
>> What I want to do is a function inserting a new item into the table
>> ensuring that there is only one record in the table having a particular
>> description and at the same time the active field set to true (it might
>> seem stupid, but the application requires it).
> Assuming active can't be NULL, what's wrong with a UNIQUE constraint on
> (description, active)?
I think he does not want descriptions to be unique among non-active
entries. If so, the right thing is a partial unique index:
CREATE UNIQUE INDEX ... on (description) WHERE active;
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Douglas McNaught | 2007-03-22 15:31:10 | Re: Configuring phpPgAdmin and pg_ctl reload |
| Previous Message | George Weaver | 2007-03-22 15:05:08 | Re: xpath_list() function |