Re: join table problem - Mailing list pgsql-sql

From Oliveiros d'Azevedo Cristina
Subject Re: join table problem
Date
Msg-id 4283335591EA4532BCE90938FCF5136F@marktestcr.marktest.pt
Whole thread Raw
In response to join table problem  (Jedrin <jrubiando@gmail.com>)
List 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 



pgsql-sql by date:

Previous
From: "Marc Mamin"
Date:
Subject: workaround for missing ROWNUM feature with the help of GUC variables
Next
From: Frank Bax
Date:
Subject: Re: What does PostgreSQL do when time goes backward?