Đầu tiên - xin lỗi cho tiêu đề mờ, tôi không thể tìm thấy cái nào tốt hơn.SQL: Nhiều bảng và truy vấn
Tôi có bảng với cấu trúc (đơn giản hóa) như sau:
EmpID DeptID
1 1
1 2
2 1
3 2
4 5
5 2
Bảng này đại diện cho một mối quan hệ nhiều-nhiều.
Tôi quan tâm đến việc tìm tất cả các EmpID có liên quan đến nhóm DeptID cụ thể, ví dụ tôi muốn tất cả các EmpID có liên quan đến DeptID 1, 2 và 3. Xin lưu ý đó là mối quan hệ AND chứ không phải HOẶC mối quan hệ. Đối với trường hợp của tôi, EmpID có thể liên quan đến các DeptID bổ sung bên cạnh 1, 2 và 3 để nó là một câu trả lời hợp lệ.
Số lượng DeptID tôi quan tâm đến thay đổi (nghĩa là tôi có thể muốn EmpID liên quan đến cả hai DeptID 3 và 5, hoặc tôi có thể muốn EmpID liên quan đến DepIDs 2, 3, 4, 5, 6, 7).
Khi tôi cố gắng tiếp cận sự cố này, tôi thấy mình hoặc tạo JOIN mỗi DepID hoặc truy vấn con trên mỗi DeptID. Điều này có nghĩa là tôi phải tạo một truy vấn mới cho mỗi số DeptID mà tôi đang thử nghiệm. Tôi rõ ràng sẽ thích có một truy vấn tĩnh với một tham số hoặc tập hợp các tham số.
Tôi đang làm việc trên cả SQL Server và MySQL (phát triển song song với hai phiên bản mã của tôi).
Bất kỳ ý tưởng nào?