Can I CONSTRAIN a particular value to be UNIQUE? - Mailing list pgsql-sql

From reina@nsi.edu (Tony Reina)
Subject Can I CONSTRAIN a particular value to be UNIQUE?
Date
Msg-id f40d3195.0111291101.3b2a5074@posting.google.com
Whole thread Raw
Responses Re: Can I CONSTRAIN a particular value to be UNIQUE?  (Stephan Szabo <sszabo@megazone23.bigpanda.com>)
Re: Can I CONSTRAIN a particular value to be UNIQUE?  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Can I CONSTRAIN a particular value to be UNIQUE?  ("Christopher Kings-Lynne" <chriskl@familyhealth.com.au>)
List pgsql-sql
I have a table where I'd like to store only one instance where a trial
was successful, but all instances where the trial failed. The success
or failure is indicated by the field called 'success'. There should be
only one unique case for each trial where success = 1, but an
undefined number of cases where success = 0.

e.g. 
CREATE TABLE table_1 (
subject    text,
target     int2,
trial      int4,
success    int2,
data       float4 );

CREATE UNIQUE INDEX pktable_1 ON table_1 (subject, target, trial);

I'd like to have some way for SQL to give me an error if I attempt to
insert more than one instance of a given subject, target, and trial
where success = 1, but would allow me to insert as many instances of
the same subject, target, and trial where success = 0.

Is there a way to do this at table creation time?

Thanks.
-Tony


pgsql-sql by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: date_part vs extract
Next
From: Stephan Szabo
Date:
Subject: Re: Can I CONSTRAIN a particular value to be UNIQUE?