[SQL 문제 풀이] FrontEnd 개발자 찾기

프로그래머스 (276035)
Stupefyee's avatar
Mar 06, 2025
[SQL 문제 풀이] FrontEnd 개발자 찾기
notion image
notion image
 

내가 작성한 쿼리

Oracle

-- Front End 들의 합을 구하는 테이블 WITH TOTAL_OF_FRONT_END AS ( SELECT SUM(CODE) AS SUM_CODE FROM SKILLCODES WHERE CATEGORY = 'Front End' ) SELECT D.ID, D.EMAIL, D.FIRST_NAME, D.LAST_NAME FROM DEVELOPERS D INNER JOIN TOTAL_OF_FRONT_END TOFE -- AND 비트연산을 통해 1보다 큰 것만 -- 1보다 크면 Front End 기술을 가지고 있다는 뜻 ON BITAND(D.SKILL_CODE, TOFE.SUM_CODE) > 0 ORDER BY D.ID ASC;

MySQL

WITH TOTAL_OF_FRONT_END AS ( SELECT SUM(CODE) AS SUM_CODE FROM SKILLCODES WHERE CATEGORY = 'Front End' ) SELECT D.ID, D.EMAIL, D.FIRST_NAME, D.LAST_NAME FROM DEVELOPERS D INNER JOIN TOTAL_OF_FRONT_END TOFE ON (D.SKILL_CODE & TOFE.SUM_CODE) > 0 ORDER BY D.ID ASC;

차이점

  • 비트연산자의 차이
    • Oracle: BITAND(인수1, 인수2) 비트 연산 함수 활용
      • Oracle 21c 이상: 비트 연산자 사용
    • MySQL: 비트 연산자 사용
 
Share article

stupefyee