Re: UNIQUE columnt depdening on other column??? - Mailing list pgsql-sql

From Richard Huxton
Subject Re: UNIQUE columnt depdening on other column???
Date
Msg-id 40BDC661.6070305@archonet.com
Whole thread Raw
In response to UNIQUE columnt depdening on other column???  ("Andrei Bintintan" <klodoma@ar-sd.net>)
List pgsql-sql
Andrei Bintintan wrote:
> Hi, 
>  
> I have a problem.
>  
> Let's say I have the following table:
> CREATE TABLE rekl_element(
> id serial PRIMARY KEY,
> active boolean NOT NULL DEFAULT 'y',
> num int4 NOT NULL,
> text varchar(10)
> );
> 
> Now I want that "num" column is "unique" but only for those columns that
> have active='y'. For the columns that have active='f' I don't care if num is
> unique or not. I'm asking this because num will be doubled some times. 

Non-standard but elegant:
CREATE UNIQUE INDEX my_partially_unique_index ON rekl_element (num) 
WHERE active;


--   Richard Huxton  Archonet Ltd


pgsql-sql by date:

Previous
From: "Andrei Bintintan"
Date:
Subject: UNIQUE columnt depdening on other column???
Next
From: Reinoud van Leeuwen
Date:
Subject: Re: UNIQUE columnt depdening on other column???