목록SQL (94)
Welcome! Everything is fine.
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 정답 FISH_INFO와 FISH_NAME_INFO을 JOIN 한 후, FISH_NAME 중에 BASS와 SNAPPER가 포함되어 있다면 해당 FISH_TYPE의 개수를 세어 조회하도록 했다. 조건을 걸어 COUNT()로 세기만 하면 되는 간단한 문제였다. SELECT COUNT(FISH_TYPE) AS FISH_COUNT FROM FISH_INFO JOIN FISH_NAME_INFO USING(FISH_TYPE) WHERE FISH_NAME IN ('BASS', 'SNAPPER')
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 제출한 오답 처음 제출한 답안인데 틀렸다. 생각해보니 월별 자동차 ID별 총 대여 횟수를 구해야 하는데, CAR_ID로만 묶을 것이 아니라 월(MONTH)로도 묶어야할 것 같다는 생각이 들었다. SELECT MONTH(START_DATE) AS MONTH, CAR_ID, COUNT(*) AS RECORDS FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE MONTH(START_DATE) BETWEEN 8 AND 10 GROUP BY CAR_ID HAVING COUNT..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 정답 먼저 HR_EMPLOYEES와 HR_GRADE를 JOIN한다. SCORE, EMP_NO, EMP_NAME, POSITION, EMAIL은 모두 이 두 테이블에서 가져올 수 있으므로 HR_DEPARTMENT 테이블은 사용하지 않아도 된다. EMP_NO을 기준으로 GROUP BY 한 것은 각 사원들의 상반기, 하반기 평가 점수를 SUM() 하기 위해서이다. 그리고나서 SCORE를 내림차순 정렬(DESC) 해준다. 평가 점수가 가장 높은 사원을 조회하는 것이므로 LIMIT을 이용해 제일 위에 있는..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 제출한 오답 일단 총주문량을 SUM()하지 않은 것도 틀렸지만, 다른 이유가 있었다. SELECT H.FLAVOR FROM FIRST_HALF H JOIN JULY J ON H.SHIPMENT_ID = J.SHIPMENT_ID GROUP BY H.FLAVOR ORDER BY H.TOTAL_ORDER + J.TOTAL_ORDER DESC LIMIT 3 처음에는 뭐가 문제지..했는데 문제 설명 중에 이런 말이 있었다. 이 말은 즉, 출하번호로 묶어도 다른 출하번호로 된 제품이 있다면 누락될 수 있다는..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 정답 월별 잡은 물고기의 수를 구해야 하므로, MONTH를 기준으로 GROUP BY 한 후 ID의 개수를 세었다. SELECT COUNT(ID) AS FISH_COUNT, MONTH(TIME) AS MONTH FROM FISH_INFO GROUP BY MONTH ORDER BY MONTH
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 정답 WHERE절에서 스킬로 Python을 가진 개발자를 걸러주면 풀 수 있는 쉬운 문제였다. SELECT ID, EMAIL, FIRST_NAME, LAST_NAME FROM DEVELOPER_INFOS WHERE SKILL_1 = 'Python' OR SKILL_2 = 'Python' OR SKILL_3 = 'Python' ORDER BY ID 📌 다른 정답 위에 내가 한 것처럼 OR로 처리해도 되고, 아래 코드 처럼 IN을 사용하여 한 번에 적어줄 수도 있다. SELECT ID, EMAIL, ..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 제출한 오답 아래 코드는 처음 작성한 코드인데, 왜 이렇게 작성했는지 모르겠다. Milk 혹은 Yogurt인 Name을 가져온 후 CART_ID를 조회하면 Milk와 Yogurt 둘 다 구입한 ID가 아니라 둘 중 하나라도 구입한 ID가 조회된다. SELECT CART_ID FROM CART_PRODUCTS WHERE NAME IN (SELECT NAME FROM CART_PRODUCTS WHERE NAME = 'Milk' OR NAME = 'Yogurt') GROUP BY CART_ID ORDE..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 정답 평균 값을 내고 소수점 반올림하는 문제가 많이 나와 익숙해져서 금방 풀었다. 또 전에는 DATE_FORMAT() 함수로 날짜를 원하는 형식으로 나타냈지만, 이번엔 YEAR() 함수를 이용해 더 간단하게 표현했다. SELECT YEAR(YM) AS 'YEAR', ROUND(AVG(PM_VAL1), 2) AS 'PM10', ROUND(AVG(PM_VAL2), 2) AS 'PM2.5' FROM AIR_POLLUTION WHERE LOCATION2 = '수원' GROUP BY YEAR ORDER B..