Re: join table problem

From: "Oliveiros d'Azevedo Cristina" <oliveiros(dot)cristina(at)marktest(dot)pt>
To: "Jedrin" <jrubiando(at)gmail(dot)com>, <pgsql-sql(at)postgresql(dot)org>
Subject: Re: join table problem
Date: 2010-08-04 11:11:35
Message-ID: 4283335591EA4532BCE90938FCF5136F@marktestcr.marktest.pt
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Howdy!

> At any rate, say I have 3 tables:
>
> table plant
> id:integer
> name string
>
>
> table seed_supplier
> id: integer
> company_name: string
>
> table plant_seed_supplier
> plant_id
> seed_supplier_id
>
> plant_seed_supplier is a join table that supports a many to many
> relationship between the plant table and the seed supplier table since
> any plant may have multiple seed suppliers and any seed supplier can
> sell seeds for many different plants.
>
> I would like to be able to write a single query that basically does
> this:
>
> It will show only one distinct row for each plant in the database. It
> will show either just one seed_supplier company name associated with
> that plant, or if there is no supplier associated with that plant it
> will show the plant in a row with that field empty.
>

You do not specify what is the seed_supplier company name that should appear
in the case there is more than one

Give this (untested) query a try

SELECT name,MIN(company_name)
FROM plant a
JOIN plant_seed_supplier associative
ON plant_id = a.id
JOIN seed_supplier b
ON b.id = supplier_id
GROUP BY name

Best,
Oliveiros

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Frank Bax 2010-08-04 11:20:31 Re: What does PostgreSQL do when time goes backward?
Previous Message Marc Mamin 2010-08-04 10:35:58 workaround for missing ROWNUM feature with the help of GUC variables