0

このチュートリアルの質問番号 13の正しい SQL を理解しようとしています。他の質問は私には関係ありません。#13 だけです。

本質的に、この質問は、「ジュリー・アンドリュース」が出演したすべての映画を見つけ出し、その結果から、それらの映画で主役を演じた俳優を選択するというものです。簡単に聞こえますが、私が試したことはすべて失敗しています。以下:

select title, name from movie
  join casting on movie.id=movieid
  join actor on actorid=actor.id
  where (name = 'Julie Andrews' ) 
  and ord=1

彼女が出演し、彼女が主演俳優だった映画を選択します。私が必要としているのは、彼女が主役を演じた映画ではなく、彼女が出演した映画の主演俳優です.

誰か提案はありますか?

4

2 に答える 2

0

これを試して:

select m.title, a.name
from movie m
join casting c on m.id = c.movieid
   and ord = 1
join actor a on a.id = c.actorid
where exists (select *
   from casting c2
   join actor a2 on c2.actorid = a2.id
      and a2.name = 'Julie Andrews'
   where c2.movieid = m.id
)
于 2013-11-13T18:19:07.477 に答える