Для схемы базы данных:
actor (id, fname, lname, gender)
movie (id, name, year)
directors (id, fname, lname)
casts (pid, mid, role)
movie_directors (did, mid)
genre (mid, genre)
Задача, которую я пытаюсь решить, состоит в следующем: Перечислите всех актеров, появившихся в 40 или более триллерах, в порядке убывания количества триллеров, в которых они появились.Верните имена и фамилии актеров, а также количество триллеров, в которых каждый из них появился.
Текущий запрос, который я использую:
SELECT a.fname, a.lname, COUNT(DISTINCT m.id)
FROM Actor a, Casts c, Movie m, genre g
WHERE a.id = c.pid
AND c.mid = m.id
AND c.mid = g.mid
AND g.genre = 'Thriller'
GROUP BY a.id, a.fname, a.lname
HAVING COUNT(DISTINCT m.id) >= 40
ORDER BY COUNT(DISTINCT m.id) DESC
Поскольку это домашнее задание,Я загрузил этот ответ в Gradescope.Он возвращает только результат:
Test Failed: False is not true
, что не очень полезно, и как прямой результат затрудняет поиск ошибки в моей логике.Я также не могу опубликовать дословно неправильный ответ в результате бесполезного сообщения об ошибке.Что не так с моим запросом, и что я могу изменить, чтобы он работал?