我有这样的东西作为一个 sql 表:
EmplID SkillID
1780 128
1780 133
2061 128
2068 128
假设我将字符串传递给存储过程,如“128,133”。我有一个拆分函数,所以 sql 可能如下所示:
SELECT DISTINCT EmplID
FROM EmplSkills
WHERE SkillID IN(SELECT data FROM dbo.Split(@Skills, ','))
您可以很容易地看到,通过 sql 语句,我们将获得 1780、2061 和 2068。我真正想要的是获得那些同时具有 128 和 133 作为技能 ID 的 EmplID,这样我应该只能获得 1780。
任何想法如何在没有一堆疯狂连接的情况下解决这个问题?
非常感谢。