Re: SQL question: checking all required items
От | Carlos Ortíz |
---|---|
Тема | Re: SQL question: checking all required items |
Дата | |
Msg-id | 17672AB7CE8E5649A043EF56118A63DC3D865B@CCEXGCLUS.stps.gob.mx обсуждение исходный текст |
Ответ на | SQL question: checking all required items (Raymond O'Donnell <rod@iol.ie>) |
Список | pgsql-general |
De: pgsql-general-owner@postgresql.org en nombre de Raymond O'Donnell
Enviado el: Vie 10/08/2007 03:07 p.m.
Para: 'PostgreSQL'
Asunto: [GENERAL] SQL question: checking all required items
Hi all,
Given the following tables -
create table people (
person_id text primary key,
person_name text,
[...etc...]
);
create table items (
item_id text primary key,
item_name text,
is_required boolean,
[...etc...]
);
create table items_for_people (
person_id text,
item_id text,
primary key (person_id, item_id),
foreign key person_id references people(person_id),
foreign key item_id references items(item_id)
);
- how can I find those people who don't have _all_ of the items which
are marked "required"?
In other words, how do I select those rows in "people" which don't have
a corresponding row in "items_for_people" for *each* row in "items"
which has is_required=true?
Many thanks,
Ray.
---------------------------------------------------------------
Raymond O'Donnell, Director of Music, Galway Cathedral, Ireland
rod@iol.ie
---------------------------------------------------------------
---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not
match
В списке pgsql-general по дате отправления: