Re: Setting a FK to look at only selected rows in the 'look-up' table...

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Sean Davis" <sdavis2(at)mail(dot)nih(dot)gov>
Cc: "Greg Cocks" <gcocks(at)stoller(dot)com>, "PostgreSQL List - Novice" <pgsql-novice(at)postgresql(dot)org>
Subject: Re: Setting a FK to look at only selected rows in the 'look-up' table...
Date: 2007-12-29 03:11:42
Message-ID: 27717.1198897902@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

"Sean Davis" <sdavis2(at)mail(dot)nih(dot)gov> writes:
> On Dec 28, 2007 7:01 PM, Greg Cocks <gcocks(at)stoller(dot)com> wrote:
>> I would like to restrict the foreign key for d_borehole.depth_unit to be
>> only those values in r_unit.unit_id where r_unit.unit_length = 'length' (
>> i.e., so that only applicable 'length' units can be utilized for the
>> depths (feet, metres, inches, etc))

> This cannot be done with foreign keys I don't think.

Maybe I missed something, but couldn't a two-column foreign key
constraint on (value, unit) be made to serve the purpose?

regards, tom lane

In response to

Responses

Browse pgsql-novice by date

  From Date Subject
Next Message Sean Davis 2007-12-29 03:28:39 Re: Setting a FK to look at only selected rows in the 'look-up' table...
Previous Message Sean Davis 2007-12-29 02:41:43 Re: Setting a FK to look at only selected rows in the 'look-up' table...