n対mの関係を持つテーブル従業員、テーブルスポーツがあります。つまり、もう1つのテーブルもあります。テーブルemp_sportとしましょう
テーブル従業員
emp_id emp_name ------------------ e1 name1 e2 name2 e3 name3 e4 name4 テーブルスポーツ スポーツ ID スポーツ名 ---------------------- sp1 spName1 sp2 spName2 sp3 spName3 テーブル emp_sport emp_id スポーツID ------------------- e1 sp1 e1 sp2 e1 sp3 e2 sp2
こんな感じで従業員からデータを選択したい
select distinct(e.emp_id), e.emp_name
from employee e
where e.emp_id not in (select sp.emp_id from sport_emp sp where sp.sport_id = 'sp1')
結果、私は持っています
e2 name2 e3 name3 e4 name4
問題は、従業員テーブルと emp_sport に非常に大きなデータがある場合、クエリが非常に遅くなることです。