まず、あいまいなタイトルで申し訳ありません。これ以上のタイトルが見つかりませんでした。
次の構造のテーブルがあります(簡略化):
EmpID DeptID
1 1
1 2
2 1
3 2
4 5
5 2
このテーブルは、多対多の関係を表しています。
たとえば、DeptID 1、2、および 3 に関連するすべての EmpID が必要です。これは AND 関係であり、OR 関係ではないことに注意してください。私の場合、EmpID は 1、2、および 3 以外の追加の DeptID に関連している可能性があり、有効な回答になります。
関心のある DeptID の数が変化します (つまり、DeptID 3 と 5 の両方に関連する EmpID が必要な場合や、DepID 2、3、4、5、6、7 に関連する EmpID が必要な場合があります)。
この問題にアプローチしようとすると、DepID ごとに JOIN を作成するか、DepID ごとにサブクエリを作成する必要があります。これは、テスト対象の DeptID の数ごとに新しいクエリを生成する必要があることを意味します。私は明らかに、パラメーターまたはパラメーターのセットを使用した静的クエリを使用することを好みます。
私は SQL Server と MySQL の両方で作業しています (コードの 2 つのバージョンを並行して開発しています)。
何か案は?