🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.bazy-danych
Article #195028

Zapytanie eliminujące bez podzapytań (master-detail-detail)

#195028
From: Roman Tyczka
Date: Wed, 13 Jul 2016 13:22
47 lines
1976 bytes
Hi,

Mam 3 tabelki w relacji master-detail-detail:
RODZICE
ID|  IMIE
 1| MARIA
 2| JAN
 3| KATARZYNA
 4| PIOTR

DZIECI
ID|   IMIE| ID RODZICA
 1| JULKA | 1
 2| ZOSIA | 1
 3| HENIU | 2
 4| ZUZIA | 3
 5| VIOLA | 4

ZABAWKI
ID| NAZWA | ID DZIECKA
 1| LALKA | 1
 2| AUTKO | 2
 3| KLOCKI| 3
 4| PIŁKA | 4
 5|   GRA | 5
 6| PISTOL| 3
 7| LALKA | 4

Każde dziecko może mieć kilka zabawek, każdy rodzic kilkoro dzieci.
Jak za pomocą jednego selecta wydobyć tylko tych rodziców, których dzieci
nie mają określonych zabawek, np. lalki?

Z powyższych danych zapytanie ma zwrócić tylko JANA i PIOTRA,  bo dziecko
MARII oraz dziecko KATARZYNY mają lalkę.

SELECT R.ID, R.IMIE FROM RODZICE R
JOIN DZIECI D ON D.IDRODZICA = R.ID
JOIN ZABAWKI Z ON Z.IDDZIECKA = D.ID
WHERE  ???

ps. umiem to zrobić z podzapytaniem w sekcji where, ale chciałbym się
dowiedzieć czy można prościej


-- 
pozdrawiam
Roman Tyczka
Technical Details
Message-ID: <swisjwkg9lsr.dlg@tyczka.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!feeder.erje.net!1.eu.feeder.erje.net!ecngs!feeder2.ecngs.de!81.171.118.64.MISMATCH!peer04.fr7!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!feeder.erje.net!1.eu.feeder.erje.net!ecngs!feeder2.ecngs.de!81.171.118.64.MISMATCH!peer04.fr7!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: Roman Tyczka <noemail@because.no>
Subject: Zapytanie eliminujące bez
 podzapytań (master-detail-detail)
Newsgroups: pl.comp.bazy-danych
User-Agent: 40tude_Dialog/2.0.15.84
MIME-Version: 1.0
Sender: romek@tyczka.no.found
Date: Wed, 13 Jul 2016 15:22:10 +0200
Message-ID: <swisjwkg9lsr.dlg@tyczka.com>
Lines: 47
Organization: Telekomunikacja Polska
NNTP-Posting-Host: nat.wave.com.pl
X-Trace: 1468416133 unt-rea-b-01.news.neostrada.pl 651 91.224.116.2:7377
X-Complaints-To: abuse@news.neostrada.pl
X-Received-Bytes: 1725
X-Received-Body-CRC: 3332666727
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit