Re: Normalized Tables & SELECT [was: Find "smallest common year"] - Mailing list pgsql-general

From Richard Huxton
Subject Re: Normalized Tables & SELECT [was: Find "smallest common year"]
Date
Msg-id 46FCC790.7050109@archonet.com
Whole thread Raw
In response to Re: Normalized Tables & SELECT [was: Find "smallest common year"]  (Alban Hertroys <a.hertroys@magproductions.nl>)
Responses Re: Normalized Tables & SELECT [was: Find "smallest common year"]
List pgsql-general
Alban Hertroys wrote:
> If you _do_ need this table (because you want to constrain your
> statistical data to only contain a specific set of years, or because you
> need a quick list of available years to select from): Make the year
> primary key and drop the artificial index.
>
> Years are perfectly fine data to constrain on, and it saves you the
> joins with that table (the foreign key constraint constrains your data
> sufficiently).
>
> You may want to constrain your years further by adding a check
> constraint, fe. CHECK (year > 1900).
>
> The same argument goes for the country names, but I generally don't like
> to have text data for primary key.

Ah, but there is a standardised list of country-codes ideal for the DBA
since the code is (usually) easily understandable.
   http://en.wikipedia.org/wiki/ISO_3166
The only problem might be if historical data uses old boundaries (e.g.
Soviet Union, Yugoslavia).

--
   Richard Huxton
   Archonet Ltd

pgsql-general by date:

Previous
From: Nis Jørgensen
Date:
Subject: Re: Normalized Tables & SELECT [was: Find "smallest common year"]
Next
From: Tom Allison
Date:
Subject: Re: Debian problem...