2016-03-20 27 views
1

1つのテーブルに行くクエリを作成しようとしていますが、この場合はTeamCodeという値が得られ、別のテーブルのTeamCodeが見つかりますHomeTeamAwayTeamという名前の列を使用し、Teamの列をクラブテーブルから返します。別のテーブルに表示されるテーブルから値を取得する方法

SELECT Team 
FROM club 
WHERE TeamCode IN (SELECT DISTINCT  
HomeTeam and Awayteam FROM matches);  

のみ、それは実際に動作する20以上

答えて

0

あるべき一つのエントリを返し、何らかの理由でこのコードは?

SELECT Team 
FROM club 
WHERE TeamCode IN (SELECT DISTINCT HomeTeam FROM Matches 
        UNION 
        SELECT DISTINCT AwayTeam FROM Matches); 

か存在します:これを試してみてください

SELECT t.team 
FROM club t 
WHERE EXISTS(select 1 from Matches s 
      where s.awayTeam = t.team 
       or s.HomeTeam = t.Team) 

または内では参加:

SELECT t.team 
FROM club t 
INNER JOIN Matches s 
ON(s.awayTeam = t.team 
    or s.HomeTeam = t.Team) 
+0

はい、これはそれが動作に最適です。 –

関連する問題