создать таблицы соединения в SQL - PullRequest
0 голосов
/ 10 ноября 2019

задание:

найти дуэт актеров, которые получают наибольшую прибыль за фильм вместе с 2010 года, которые были в порядке показа ниже 3, не принадлежа к коллекции и не просто голос икак минимум 3 фильма вместе.

подсказка: создайте таблицу со всеми возможными дуэтами, самостоятельно присоединившись к столам, чтобы получить все дуэты из одного фильма.

может кто-нибудь, пожалуйстазаставить меня понять этот намек? Я могу понять само присоединение, но как найти дуэты?

У меня есть две таблицы фильмов и составлен в таблице фильмов. У меня есть имена фильмов, идентификатор фильма, доход, персонаж, принадлежащие к коллекции и в таблице ролей,у меня есть movie_id, имя актера, порядок.

select name,`order`,id from cast_id ci 
where  `order`<=3 and `character` NOT LIKE '%voice%' 

после этого у меня есть все актеры с порядком, меньшим, чем 3, персонаж не похож на voice и movie_id, который уникален здесь, что нужно сделать, чтобы получить дуэты

1 Ответ

0 голосов
/ 11 ноября 2019

Вы должны предоставить больше информации, чтобы получить правильный ответ, но если бы у вас была такая таблица:

cast(MovieID,ActorID)

, тогда вы бы сделали что-то вроде

select c1.MoveID, c1.ActorID, c2.ActorID
from cast c1
join cast c2 on c2.MoveID=c1.MoveID and c1.ActorID>c2.ActorID

Этодаст вам все дуэты. «>» Означает, что каждая пара появляется только один раз, а не один раз в каждом порядке. В зависимости от ваших требований вы можете вместо этого использовать «! =».

Остальное домашнее задание зависит от вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...