코딩테스트/SQL

문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/284531 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 내 풀이SELECT ROUTE , CONCAT(ROUND(SUM(D_BETWEEN_DIST), 1), 'km') AS TOTAL_DISTANCE , CONCAT(ROUND(SUM(D_BETWEEN_DIST) / COUNT(*), 2), 'km') AS AVERAGE_DISTANCEFROM SUBWAY_DISTANCEGROUP BY ROUTEORDER BY SUM(D_BETWEEN..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/131530 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr가격대 별 상품 개수를 구하는 문제이다.  내 풀이SELECT (FLOOR(PRICE / 10000) * 10000) AS PRICE_GROUP , COUNT(*) AS PRODUCTSFROM PRODUCTGROUP BY FLOOR(PRICE / 10000) * 10000ORDER BY FLOOR(PRICE / 10000) * 10000; 어렵지는 않지만, FLOOR 함수를 모르..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/59413 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 단순히 GROUP BY를 해서는 풀지 못하는 문제이다. GROUP BY를 하면 일부의 시간만 출력되고 모든 시간이 출력되지는 않기 때문이다. 즉, 문제에서는 0시부터 23시까지 값이 없는 데이터도 출력하라 하였는데, 데이터가 없는 시간이 존재한다! 파이썬으로 하면 쉽게 할 수 있을 것 같은데, 좀 어려웠다ㅠㅠ그래서 다른 사람의 풀이를 보고 풀어보았다.  풀이-- RECURSIVE CTEWIT..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/131532 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 내 풀이SELECT YEAR(s.SALES_DATE) AS YEAR , MONTH(s.SALES_DATE) AS MONTH , i.GENDER AS GENDER , COUNT(DISTINCT s.USER_ID) AS USERSFROM ONLINE_SALE s INNER JOIN USER_INFO iON s.USER_ID = i.USER_IDGROUP B..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/151137 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 내 풀이SELECT CAR_TYPE, COUNT(car_id) AS CARSFROM CAR_RENTAL_COMPANY_CARWHERE OPTIONS LIKE '%통풍시트%' OR OPTIONS LIKE '%열선시트%' OR OPTIONS LIKE '%가죽시트%'GROUP BY CAR_TYPEORDER BY CAR_TYPE; 쉬운 문제이지만, 유의할 점은 OPTI..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/157340 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 내 풀이틀린 풀이SELECT CAR_ID, CASE WHEN (END_DATE >= '2022-10-16' AND START_DATE  처음에는 위와 같이 풀었다. 하나의 CAR_ID에 대하여 대여 기록이 여러개 있으므로, GROUP BY를 통해 그룹화를 해주었는데, 사실 풀면서도 뭔가 그룹화에 대한 조건이 필요할듯 했는데, 대여 기록을 기준으로 하기에도 애매하고, 뭔가 다 애매해서 ..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/131123 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 내 풀이풀이 1WITH w1 AS ( SELECT REST_ID , RANK() OVER(PARTITION BY FOOD_TYPE ORDER BY FAVORITES DESC) AS ranking FROM REST_INFO)SELECT i.FOOD_TYPE, i.REST_ID, i.REST_NAME, i.FAVORITESFROM REST_INFO i INNER ..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/131116 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 시도 1 (틀린 풀이)SELECT CATEGORY, MAX(PRICE) AS MAX_PRICE, PRODUCT_NAMEFROM FOOD_PRODUCTWHERE CATEGORY IN ('과자', '국', '김치', '식용유')GROUP BY CATEGORYORDER BY MAX(PRICE) DESC 처음에는 복잡하지 않게 생각하고 풀어보았다. 그러나, 이 풀이는 틀렸다ㅠㅠ 이유는, GROUP..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/151139 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제에서 주어진 조건은 다음과 같다. 1. 대여 시작일을 기준으로 2022년 8월부터 2022년 10월까지2. 총 대여 횟수가 5회 이상인 자동차3. 월별 자동차 ID 별 총 대여 횟수(컬럼명: RECORDS)4. 월 기준 오름차순, 자동차 id 기준 내림차순, 0이면 제외이를 기반으로 문제를 풀어보자.  내 풀이-- 기준일에 대하여 총 대여 횟수가 5회 이상인 자동차 뽑기WITH w1 A..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/131124 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제의 조건은 다음과 같다. - 리뷰를 가장 많이 작성한 회원의 리뷰 조회- 회원 이름, 리뷰 텍스트, 리뷰 작성일이 출력- 리뷰 작성일을 기준으로 오름차순, 리뷰 텍스트를 기준으로 오름차순 회원의 정보가 담긴 테이블과 리뷰 정보가 담긴 테이블이 나누어져 있으므로, 풀이 과정은 다음과 같이 이루어진다. 1. 리뷰를 가장 많이 작성한 회원 찾기2. 그 회원의 이름, 텍스트, 작성일 출력하기 ..
_알파카
'코딩테스트/SQL' 카테고리의 글 목록