반응형
https://school.programmers.co.kr/learn/courses/30/lessons/276035
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제 내용
DEVELOPERS 테이블에서 Front End 스킬을 가진 개발자의 정보를 조회하려 합니다. 조건에 맞는 개발자의 ID, 이메일, 이름, 성을 조회하는 SQL 문을 작성해 주세요.
결과는 ID를 기준으로 오름차순 정렬해 주세요.
해결 방법
DEVELOPERS 에 해당하는 스킬코드를 엔드연산을 통해 검출해낼 수 있습니다.
예를 들어 스킬코드가 400 (110010000) 이고 현재 디벨롭퍼의 스킬코드가 16(10000)을 엔드연산을합니다.
그러면 결과로 10000이 반환되고, 스킬코드 400에 포함되므로 해당 스킬을 가지고 있는 것을 알 수 있습니다.
또한 한명의 개발자가 여러개의 스킬코드를 가지고 있을 경우가 있습니다. 따라서 DISNINCT로 중복을 제거해야합니다.
해결 쿼리문
SELECT DISTINCT A.ID, A.EMAIL, A.FIRST_NAME, A.LAST_NAME
FROM DEVELOPERS AS A
INNER JOIN SKILLCODES AS B
ON (A.SKILL_CODE & B.CODE = B.CODE)
WHERE B.CATEGORY = 'Front End'
ORDER BY A.ID ASC
;
'프로그래머스 > lv4' 카테고리의 다른 글
[프로그래머스 lv4] 보호소에서 중성화한 동물 MYSQL (1) | 2024.11.29 |
---|---|
[프로그래머스 lv4] 언어별 개발자 분류하기 MYSQL (0) | 2024.11.27 |
[프로그래머스 lv4] 특정 세대의 대장균 찾기 (0) | 2024.11.25 |
[프로그래머스 lv4] 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기 (0) | 2024.11.24 |