プロデューサー、ライター、ライターのロール値が同じタイトルをいくつ選ぶにはどうすればよいですか?
テイクはこんな感じで、
title | year | person | role(actor, director, producer or writer)
推論は線に沿っている必要があります。
SELECT COUNT(title)
FROM movie_table
WHERE role(writer,director, producer)= same person
オプションの結合条件で (同じ行ではなく) 自己結合を使用します。
SELECT COUNT(t1.title)
FROM movie_table t1
JOIN movie_table t2 ON t1.id != t2.id
AND (t1.writer = t2.writer
OR t1.director = t2.director
OR t1.producer = t2.producer)
試す
SELECT COUNT(title)
from movie_table
WHERE role in ('producer', 'writer')
and movie_person is not null
group by title
having count(distinct role) = 2
and count(distinct movie_person) = 1