-1

私はこのようなテーブルを持っています

YR    Game
1960  football
1961  football
1962  football
1962  tennis
1963  football
1963  golf
1965  football
1965  tennis 
1965  golf
1967  tennis
1967  volleyball

join を使用してクエリを作成し、テニスではなくフットボールを試合として行う必要がある年を見つけるにはどうすればよいですか?

4

3 に答える 3

3

WHERE フィルターを使用して結果を取得できます。

select yr, game
from yt
where game = 'Football'
  and yr not in (select yr
                 from yt
                 where game = 'tennis');

デモで SQL Fiddle を参照してください

于 2013-05-30T22:13:29.370 に答える
0

結合を使用してこれをフィルタリングできます (欠点は、両方の列にインデックスが必要なことです)。

SELECT YR FROM table AS a
LEFT JOIN table AS b ON b.YR = a.YR AND b.Game = 'tennis'
WHERE a.Game = 'football' AND b.Game IS NULL
于 2013-05-30T22:14:21.803 に答える