Vinnaren i pepparkakshustävlingen!
  • 1
  • 2
2010-08-02, 14:25
  #13
Medlem
dethalvabarnets avatar
sirPatman har helt rätt, slog mig direkt när jag läste din post, tänkte också på räkna antal röda saker och jämföra det men glömde bort att man kan använda värden i huvudqueryn i subqueries.

denna tar fram iallafall alla namn som äger alla röda saker, oavsett vad de övrigt äger,
gillar underscore för primary keys dock och har en ful ovana att döpa tabeller till plural istället
för singular som tabeller bör döpas till ju.

Citera
2010-08-02, 20:13
  #14
Medlem
Tackar tackar för tipsen, fick bli en COUNT lösning:

Kod:
SELECT DISTINCT Person.namn
FROM Person, Ägarregister, Sak, Typ
WHERE Person.personId = Ägarregister.personId
AND Ägarregister.sakId = Sak.sakId
AND Sak.typId = Typ.typId
AND Typ.färg = 'röd'
GROUP BY Person.namn
HAVING COUNT (Ägarregister.personId) =
(SELECT COUNT (Sak.sakId)
FROM (SELECT DISTINCT Sak.sakId
FROM Sak, Typ
WHERE Sak.typId = Typ.typId
AND Typ.färg = 'röd'))
Citera
  • 1
  • 2

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback