WITH flags AS ( SELECT d.ID, d.EMAIL, MAX(s.CATEGORY = 'Front End') AS has_fe, MAX(s.NAME = 'Python') AS has_py, MAX(s.NAME = 'C#') AS has_csharp FROM DEVELOPERS d LEFT JOIN SKILLCODES s ON (s.CODE & d.SKILL_CODE) = s.CODE GROUP BY d.ID, d.EMAIL)# SELECT * FROM FLAGS;SELECT CASE WHEN has_fe = 1 AND has_py = 1 THEN 'A' WHEN has_csharp = 1 ..