Algorithm/Programmers SQL

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

제우제우 2024. 9. 8. 19:01

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

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr


코딩테스트 연습 > SELECT > 조건에 맞는 개발자 찾기

문제 분석

난이도: LEVEL2

문제 요구사항

DEVELOPERS 테이블에서 Python이나 C# 스킬을 가진 개발자의 정보를 조회하려 합니다. 

조건에 맞는 개발자의 ID, 이메일, 이름, 성을 조회하는 SQL 문을 작성해 주세요.
결과는 ID를 기준으로 오름차순 정렬해 주세요.

 

이진수 비트 계산을 활용한다. 

정답 코드 

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

 

파이썬 / C# 코드를 가지고 있으면 AND 계산 시 자동으로 이진수 변화하여 계산되고 1 이상이 나온다 (코드 값)