У меня есть следующий запрос, в результате которого получается язык, на котором говорит сотрудник, и соответствующий ему уровень:
SELECT E.EmployeeId
,ISNULL(L.ID ,0) AS LanguageId
,L.Label AS Language,
ll.Label AS LanguageLevel
FROM Employee e
LEFT JOIN AF_AdminFile aaf ON e.AdminFileId = aaf.AdminFileId
LEFT JOIN AF_Language al ON aaf.AdminFileId = al.AdminFileId
LEFT JOIN Language l ON al.LanguageId = l.ID
LEFT JOIN LanguageLevel ll ON al.LanguageLevelId = ll.LanguageLevelId
ORDER BY e.EmployeeId
Результат выглядит примерно так:
Для сотрудника с EmployeeId = 6 он говорит по-английски / свободно, по-испански / хорошо, по-французски / по-родному.
Зная, что в моей таблице 187 разных языков, язык и 4 уровня языкав моей таблице LanguageLevel (Ярмарка, Свободно, Хорошо, Родной Язык)
Я хочу получить только язык Родной и Свободный, как показано ниже:
EmployeeId MotherTongue Fluent
6 French English