У меня есть две таблицы. Студент и работа.
Мне нужно искать студентов, которые обладают всеми навыками, необходимыми для работы.
Student Job
StudentId MandSkills JobPostId MandSkills
208 2,16,17 36 2,16,18
209 2,16
210 2,18,34
211 2,16,17
212 2,17,16,23
213 2,16,17
214 2,16,17
215 2,18,17,28
217 2,16,17
Я написал запрос
SELECT
S.StudentId, S.MandSkills, JP.items
FROM
Split((SELECT MandSkills FROM JobPosts WHERE JobPostId = 36),',') JP,
Students S
WHERE
JP.items IN (SELECT items FROM Split(S.MandSkills,','))
[Split () получает в качестве входных данных разделенные запятыми строковые значения и возвращает отдельные значения в виде таблицы]
, который возвращает результат, подобный этому:
studentId MandSkills items
208 2,16,17 2
209 2,16 2
210 2 2
211 2,16,17 2
212 2,16,17 2
213 2,16,17 2
214 2,16,17 2
215 2,16,17 2
217 2,16,17 2
218 2,16,17,26 2
219 2,16 2
221 2,16 2
208 2,16,17 16
209 2,16 16
211 2,16,17 16
212 2,16,17 16
213 2,16,17 16
214 2,16,17 16
215 2,16,17 16
217 2,16,17 16
218 2,16,17,26 16
219 2,16 16
220 16,17 16
221 2,16 16
Проверяется только один навык.
Я хочу выбрать студентов, у которых есть все три навыка.
Пожалуйста, помогите мне.
Заранее спасибо.
-Aarti