我正在解决以下问题,我必须“列出所有与‘Art Garfunkel’合作过的人。”
问题是否定的。 16 在这里:http://sqlzoo.net/wiki/More_JOIN_operations
编辑:我编写了以下代码来获取整个姓名列表,但徒劳无功
select name
from actor left join casting on id=actorid
where movieid IN ( select movieid
from casting left join actor on id=actorid
where id IN ( select id from actor where name ='Art Garfunkel'))
请告诉我哪里出错了?
最佳答案
试试这个:
SELECT a.name
FROM actor a
INNER JOIN casting b ON a.id = b.actorid
INNER JOIN (SELECT b.movieid FROM casting b
INNER JOIN actor c ON b.actorid=c.id AND c.name = 'Art Garfunkel'
) c ON b.movieid = c.movieid
where a.name <> 'Art Garfunkel';
关于sql - SQL 中的子查询和连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17927808/