Denormalizing during select

From: no(dot)spam(at)address(dot)com
To: pgsql-sql(at)postgresql(dot)org
Subject: Denormalizing during select
Date: 2003-02-24 17:18:24
Message-ID: u3kk5v4i276aqv2hv22pn6jh4t3a2ev08g@4ax.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

I have two tables (A and B) in a one-to-many relationship. When
retrieving data from one table (A), I need to denormalize the tables
during a select so that values of a column in the many table (B)
appear as a list in one field of the output. E.g.:

create table one_table (
name varchar(20),
age integer,
--
constraint one_table_pk
primary key (name)
);

create table many_table (
name varchar(20),
property varchar(15),
--
constraint many_table_pk
primary key (name, property),
constraint many_table_fk
foreign key (name) references one_table (name)
);

So one_table could contain:
name age
---- ---
Mickey Mouse 50
Donald Duck 60
Goofy 45

and many_table could contain:
name property
---- --------
Mickey Mouse Small
Mickey Mouse Black
Mickey Mouse Squeaks
Donald Duck Quacks

The query I'm trying to write would have as output something like:

name age properties
---- --- ----------
Mickey Mouse 50 Small, Black, Squeaks
Donald Duck 60 Quacks
Goofy 45 <null>

Could somebody please help point me in the right direction? I imagine
this is a common need...

Thanks,

...Edmund.

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Victor Yegorov 2003-02-24 17:53:00 Dynamic SELECT condition
Previous Message Bruno Wolff III 2003-02-24 17:16:33 Re: Help with query involving aggregation and joining.