/ / Single Subquery vracia viac riadkov v databáze Oracle - Oracle

Jediný poddotaz vráti viacero riadkov v databáze Oracle - Oracle

select distinct a.person.name, b.title,b.director.name
from movie_roles a, movie b
where a.person.name=
( select b.director.name
from movie b, movie_roles a
where b.director.name=a.person.name)
and b.movieID=a.movie.movieID;

Stále mám chybu, že hovoriť jediné poddotazovanie vráti viacero riadkov v Oracle.
Môže mi niekto pomôcť vyriešiť tento problém?

odpovede:

2 pre odpoveď č. 1

Je samozrejmé.V nasledujúcom riadku

where a.person.name= ( select b.director.name from movie b, movie_roles a where b.director.name=a.person.name)

dostanete viac ako jeden výsledok, takže nemôžete použiť "=". vyskúšať

where a.person.name IN( select b.director.name from movie b, movie_roles a where b.director.name=a.person.name)