Autor Zpráva
jarafat
Profil
Dobrý den,

mám jeden dotaz a byl bych velmi vděčný za jakoukoliv odpověď.

Mám tabulku čtenářů, tabulku knih a poté tabulku, která tyto dvě tabulky spojuje (čtenář čte určité knihy), tato tabulka vypadá takto:
- id
- ctenar
- kniha

Potřeboval bych z této tabulky zjistit průnik četby dvou (nebo více) čtenářů, tzn. najít knihy, které četli oba čtenáři. Vůbec nevím, jak na to.
Kajman_
Profil *
Pro čtenáře 10 a 20 takhle nějak

select * from knihy k where
k.kniha in (select kniha from spojuje where ctenar=10) and
k.kniha in (select kniha from spojuje where ctenar=20)
jarafat
Profil
Kajman_: Děkuju moc.
Kajman_
Profil *
No a když by jich bylo víc, tak možná bude rychlejší dotaz...

select * from knihy k where
k.kniha in (select kniha from spojuje where ctenar in (10,20,30,40,50) group by kniha having count(distinct ctenar)=5)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0