본문 바로가기
SQL

프로그래머스 : FrontEnd 개발자 찾기

by sooyeoon 2024. 7. 8.

 

FrontEnd 개발자 찾기

SELECT ID, EMAIL, FIRSTNAME, LASTNAME
FROM DEVELOPERS
WHERE SKILL_CODE &
(
SELECT SUM(CODE)
FROM SKILLCODES
WHERE CATEGORY = 'Front End'
) -- CATEGORY가 'Front End'인 모든 코드의 합을 비트 AND 연산을 수행하여 비교
ORDER BY ID

 

'&' 비트연산자

비트 AND 연산은 두 숫자의 각 비트를 비교하여 둘 다 1인 경우에만 1을 반환하는 연산

 

1. SKILLCODES 테이블에서 CATEGORY가 'Front End'인 모든 코드의 합을 계산

2. DEVELOPERS 테이블의 SKILL_CODE와 위에서 구한 합과 비트 AND 연산을 수행하여 결과가 0이 아닌 행들을 선택

3. 선택된 행들을 ID 순서대로 정렬

 

 

 

 

 

 

 

참고