SQL Select Problem...

dborger

Grünschnabel
Hallo,

also ich muss hier folgende Aufgabe lösen:

Bestimme die Kundennummern der Kunden, die bereits alle Produkte bestellt haben.

Hier ist die dazugehörige CAP-Datenbank
http://img201.imageshack.us/img201/2520/81524148tp0.jpg
http://img147.imageshack.us/img147/664/84831977cr4.jpg

Hab die Aufgabe jetzt versucht mit folgenden SQL Anweisung zu lösen:

SELECT cid FROM orders WHERE pid =ALL (SELECT pid from products)

Also mit dem Subquery wähle ich alle produkte aus die es gibt(Hab also die Menge von Produkte..)
Und dann vergleich ich halt die einzelnen Elemente aus der Relation "orders" mit =ALL...

Jetzt müsste der doch jedes Element mit der Menge vergleichen und dann die jeweilige cid ausgeben...aber macht der nicht...

vllt. bin ich ja auch völlig auf den falschen weg aber komm da jetzt gar net mehr weiter und bin schon am verzweifeln -_-

Vllt. weiss ja jemand von euch rat, wäre sehr dankbar!!

greetz
 
Hi,

SQL:
select a.pid, b.pid, b.uid
from 
(
		select  sum(pid) pid
		from
		(
			select  length(pid) pid
			from orders 
			group by pid
		)z
		 
)a
join 
(
    select  uid, sum(pid) pid
		from
		(		
			select uid, length(pid)pid
			from orders 
			group by uid, pid
		)y
		group by uid 
)b
on a.pid = b.pid
 
Zuletzt bearbeitet von einem Moderator:
Zurück