2010-02-22 3 views
0

У меня проблема с sql с именами столбцов в подзапросе im, угадывая его, потому что ему еще не назначено это имя, но я не могу решить, как его перенастроить.Subselect Column Неверная проблема

select Distinct Captains.Name, Captains.Team, (select count(Winners.Name) from (select HomeTeamCaptain As Name from fixture where fixture.HomeTeamCaptain = Captains.Name And fixture.matchResult = fixture.HomeTeam UNION ALL select AwayTeamCaptain As Name from fixture where fixture.AwayTeamCaptain = Captains.Name And fixture.matchResult = fixture.AwayTeam) As Winners) As Winners From (select fixture.HomeTeamCaptain As Name, HomeTeam As Team From fixture UNION ALL select fixture.AwayTeamCaptain As Name, AwayTeam As Team From fixture) As Captains order by Name; 

«Captains.Name» это вопрос мне нужно, чтобы запустить Count - подвыборки, но не может достать его значение!

+0

Привет, Стив, добавьте несколько разрывов строк, это невозможно прочитать. –

ответ

2

Это работает для меня:

select distinct Captains.Name, Captains.Team, 
    (select count(*) 
    from fixture 
    where 
     --I changed this a bit 
     (fixture.HomeTeamCaptain = Captains.Name And 
     fixture.matchResult = fixture.HomeTeam) 
    OR 
     (fixture.AwayTeamCaptain = Captains.Name And 
     fixture.matchResult = fixture.AwayTeam) 
    ) As Winners 

FROM (select fixture.HomeTeamCaptain As Name, HomeTeam As Team 
    from fixture 
    UNION ALL 
    select fixture.AwayTeamCaptain As Name, AwayTeam As Team 
    from fixture) AS Captains 
order by Captains.Name; 

Вы должны рассмотреть вопрос о создании Captains таблицы и ссылки "Home" и "Away" капитаны с помощью Id.

+0

спасибо, что я был слишком импонирую, я вижу, где я сейчас ошибся! милая! – Steve