Я пытаюсь получить запрос для следующего примера, где мне нужно выбрать всех людей, которые играли для одной и той же команды (или того же и других) в качестве кого-то. НапримерВыбор кортежей из многозначного атрибута
person teamName
1 maple leafs
1 rangers
2 red wings
3 rangers
3 avalanche
3 maple leafs
Я пытаюсь создать запрос, который говорит, что «найти все игроки, которые играли на одних и тех же команд, как игрока 1». В приведенном выше примере, он должен вернуть игроков 1 и 3. У меня есть что-то работает, то есть
select person from teams where teamName = 'maple leafs' intersect select person from teams where teamName = 'rangers';
Однако это слишком жёстко (игрок может присылают в другую команду). Я могу получить список игроков, которые были в команде игроков 1 со следующими
create table temp as select teamName from teams where person = 1;
select * from temp join teams on temp.teamName = teams.teamName;
Но я не знаю, как потом извлечь человек, которые на всей ту же команду, как игрок 1. Я вы пробовали группу и делали предложения, но когда я группируюсь по человеку, все команды больше, чем первые, теряются, поэтому я немного застрял.
Любая помощь приветствуется.
Отлично, я закончил использовать счет (*), чтобы сравнить эти две таблицы, спасибо! – errorline1