Problem z zapytaniem

0

Witam,
Jak napisać zapytanie które zwraca id_tematyki tej, która występuje we wszystkich książkach jakie zwraca jakieś inne podzapytanie.
Np to podzapytanie zwraca książki napisane samodzielne przez autora 2:

SELECT akk.id_ksiazki 
FROM autor_ksiazka akk
 WHERE akk.id_autora=2
AND 
          NOT EXISTS(SELECT 1 FROM autor_ksiazka akkk WHERE akkk.id_ksiazki=akk.id_ksiazki AND      akkk.id_autora!=akk.id_autora)

i chciałbym napisać zapytanie które zwróci id_tematyki które zawierają się we wszystkich ksiiążkach zwróconych przez to zapytanie.
Dodam że książka może mieć kilka tematyk.

title

0

to zapytanie można napisać prościej

SELECT ak.id_ksiazki 
FROM autor_ksiazka ak
WHERE ak.id_autora=2
group by ak.id_ksiazki
having count(ak.id_autora) = 1

a do tego tematykę można wyciągnąć na kilka sposobów

select kt.id_tematyki
from ksiazki_tematyka kt
join (SELECT ak.id_ksiazki 
FROM autor_ksiazka ak
WHERE ak.id_autora=2
group by ak.id_ksiazki
having count(ak.id_autora) = 1) k on k.id_ksiazki = kt.id_ksiazki
1
SELECT ak.id_ksiazki 
FROM autor_ksiazka ak
GROUP BY ak.id_ksiazki
HAVING COUNT(distinct case when ak.id_autora=2 then ak.id_autora end) = 1 and COUNT(distinct ak.id_autora) = 1

1 użytkowników online, w tym zalogowanych: 0, gości: 1