SQL 쿼리 연습 73

[Lv.2 / 프로그래머스 / SQL] 물고기 종류 별 잡은 수 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 (MySQL) 물고기의 종류별로 개수를 출력해야 한다. FISH_TYPE 대신 FISH_NAME을 출력해야 하므로 JOIN을 통해 해결해야 한다. SELECT COUNT(*) AS FISH_COUNT, FISH_NAME FROM FISH_INFO LEFT JOIN FISH_NAME_INFO ON FISH_INFO.FISH_TYPE = FISH_NAME_INFO.FISH_TYPE GROUP BY FISH_NAME_INFO.FISH_NAME ORDER BY FISH_COUNT DESC

[Lv.1 / 프로그래머스 / SQL] 잔챙이 잡은 수 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 (MySQL) 길이가 10cm 이하인 물고기의 개수를 출력해야 한다. 10cm 이하인 것은 LENGTH가 NULL로 표기되므로 LENGTH가 NULL인 것들을 출력하면 된다. SELECT COUNT(*) AS FISH_COUNT FROM FISH_INFO WHERE LENGTH IS NULL

[Lv.3 / 프로그래머스 / SQL] 대장균의 크기에 따라 분류하기 1

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 각 구간 조건에 따라 Case 문으로 분류하여 SIZE를 달리 표현할 수 있다. SELECT ID, CASE WHEN SIZE_OF_COLONY > 1000 THEN "HIGH" WHEN SIZE_OF_COLONY > 100 THEN "MEDIUM" ELSE "LOW" END AS SIZE FROM ECOLI_DATA ORDER BY ID

[Lv.3 / 프로그래머스 / SQL] 대장균들의 자식의 수 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 PARENT_ID가 자신의 ID와 일치하는 행의 개수를 세 CHILD_COUNT 컬럼과 함께 출력해야 한다. 자식이 없어서 Null로 나타난 경우, IFNULL 구문 등을 사용하여 0으로 대체하여 출력해야 한다. SELECT ID, IFNULL( ( SELECT COUNT(*) FROM ECOLI_DATA GROUP BY PARENT_ID HAVING PARENT_ID = ID ), 0 ) AS CHILD_COUNT FROM ECOLI_DATA ORDER BY ID

[Lv.2 / 프로그래머스 / SQL] 업그레이드 된 아이템 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 a 아이템의 parent_item 이 null이 아닌 b 인 경우, b의 Rarity가 RARE인 것을 출력하면 된다. 서브쿼리를 활용하여 해결했다. SELECT INFO.ITEM_ID, INFO.ITEM_NAME, INFO.RARITY FROM ITEM_INFO AS INFO, ITEM_TREE AS TREE WHERE INFO.ITEM_ID = TREE.ITEM_ID AND (SELECT DISTINCT RARITY FROM ITEM_INFO AS INFO2, ITEM_TREE AS TREE2 WHE..

[Lv.2 / 프로그래머스 / SQL] ROOT 아이템 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 PARENT_ITEM_ID 가 Null인 항목을 출력해야 한다. IS NULL 구문을 통해 현재 필드의 null 여부를 반환받을 수 있다. SELECT INFO.ITEM_ID, INFO.ITEM_NAME FROM ITEM_INFO AS INFO, ITEM_TREE AS TREE WHERE INFO.ITEM_ID = TREE.ITEM_ID AND TREE.PARENT_ITEM_ID IS NULL

[Lv.2 / 프로그래머스 / SQL] 조건에 맞는 아이템들의 가격의 총합 구하기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 희귀도가 LEGEND인 아이템의 PRICE 합을 구해야 한다. SELECT SUM(PRICE) AS TOTAL_PRICE FROM ITEM_INFO WHERE RARITY = 'LEGEND'

[Lv.4 / 프로그래머스 / SQL] FrontEnd 개발자 찾기

풀이 SKILLCODES에 있는 스킬 중 Front End 스킬을 가진 개발자를 출력해야 한다. 이전 문제에서 SKILLCODES에 있는 CODE를 적절하게 서브쿼리로 구해, DEVELOPERS에 있는 SKILL_CODE 를 & 비트 연산을 사용해 비교하여 정답을 구했다. 마찬가지로, 이번에는 Front End 카테고리에 속한 스킬들을 모두 추출하여 비교하면 되므로 Front End인 것만 추출하여 CODE를 더해 비트연산을 하면 된다. SELECT DISTINCT ID, EMAIL, FIRST_NAME, LAST_NAME FROM DEVELOPERS AS D WHERE D.SKILL_CODE & ( SELECT SUM(`CODE`) FROM SKILLCODES WHERE CATEGORY = 'Front..

[Lv.2 / 프로그래머스 / SQL] 조건에 맞는 개발자 찾기

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 DEVELOPERS 테이블에 있는 개발자의 SKILL_CODE가 SKILLCODES 테이블의 C#, Python 코드 중 하나를 포함하는 ROW를 출력해야 한다. 비트연산자를 활용하여 개발자의 SKILL_CODE에 C# 혹은 Python의 CODE가 포함되는지 판별하도록 하자. SELECT DISTINCT ID, EMAIL, FIRST_NAME, LAST_NAME FROM DEVELOPERS AS D WHERE D.SKILL_CODE & (SELECT `CODE` FROM SKILLCODES WHERE ..

반응형