[프로그래머스/MySQL] 조건에 맞는 개발자 찾기

지누초이·2024년 3월 27일

프로그래머스

목록 보기
12/37
post-thumbnail

문제

https://school.programmers.co.kr/learn/courses/30/lessons/276034


노트

  • 우선 PythonC#에 해당하는 CODE 를 알아야한다.
    이 부분이 서브 쿼리로 들어갈 것은 자명하다.
  • 위 서브 쿼리의 결과(256, 1024인 것을 테이블만 봐도 알수는 있지만)를
    SKILL_CODE& 연산하여 1인지를 확인해야 한다.
    이 때 주의할 것은,
SKILL_CODE & (SELECT CODE FROM SKILLCODES WHERE NAME = 'Python') = 1

맨 뒤에 = 1 을 붙히면 정상적인 답이 나오지 않는다.
삽질하다가 혹시나하고 빼봤더니 잘 나온다..


정답

SELECT 
    ID
    , EMAIL
    , FIRST_NAME
    , LAST_NAME
FROM 
    DEVELOPERS
WHERE 
    SKILL_CODE & (SELECT CODE FROM SKILLCODES WHERE NAME = 'Python')
    OR SKILL_CODE & (SELECT CODE FROM SKILLCODES WHERE NAME = 'C#')
ORDER BY
    ID

더 좋은 해결방법이 있다면 언제든 댓글로 알려주세요 🤗

0개의 댓글