SQL Server 2012.
На каждом предприятии есть одна или несколько команд.У каждой команды могут быть спонсоры или спонсоры.
Enterprise
Id Name
1 A
2 B
3 C
и таблица команды:
Team
Id Name EnterpiseId
1 For 1
2 Xor 2
3 Nor 2
4 Xur 1
5 Fir 3
6 Fte 2
и теперь спонсор таблицы
Sponsor
id Name TeamId
1 XX1 1
2 FC7 1
3 89U 3
Теперь мне нужно знать, как представить эту таблицу, которая показывает толькопредприятия, у которых есть хотя бы один спонсор.
FINAL TABLE
Id Name
1 A
3 C
На предприятии B есть 3 команды, но нет спонсоров для этих 3 команд, поэтому я хочу показать предприятия, у которых есть спонсоры "А"и "С".
Select A.id, A.name
FROM Enterprise A
LEFT JOIN Team B on A.Id=b.EnterpriseId
INNER JOIN Sponsor C on B.Id=C.TeamId
Where (SELECT COUNT(*) FROM Sponsor S INNER JOIN Team T on T.id=S.TeamId group by T.id)>0
Это не работает.Я не привык использовать подмножества, которые, вероятно, способ достижения желаемой таблицы.Благодаря.