[SQL] 조건에 맞는 개발자 구하기(프로그래머스)

2024. 5. 5. 21:11코딩 테스트

 

문제

 

 

개념
  • 비트연산자 

출처 : https://velog.io/@sobit/%EB%B9%84%ED%8A%B8-%EC%97%B0%EC%82%B0%EC%9E%90bitwise-operator-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%EB%AC%B8%EC%A0%9C%EB%A1%9C-%EC%9D%B4%ED%95%B4%ED%95%B4-%EB%B3%B4%EC%9E%90

 

  • C# 과 Python의 코드를 합하면 이진법으로 1010000000 이고 개발자의 SKILL_CODE와 각 자리마다 비트연산(&)을 하여 0이 아니면 C#이나 Python 스킬을 보유했다고 알 수 있다.

 

정답
SELECT ID, EMAIL, FIRST_NAME, LAST_NAME
FROM DEVELOPERS
WHERE SKILL_CODE & 
(
    SELECT SUM(CODE)
    FROM SKILLCODES
    WHERE NAME IN ('C#', 'Python')
) != 0
ORDER BY ID