DB 6

[SQL]가격이 제일 비싼 식품의 정보 출력하기 - SQL 고득점 Kit

문제코딩테스트 연습 - 가격이 제일 비싼 식품의 정보 출력하기 | 프로그래머스 스쿨 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICEFROM FOOD_PRODUCTWHERE PRICE = (SELECT MAX(PRICE) FROM FOOD_PRODUCT);서브 쿼리를 사용하면 쉽게 풀 수 있는 문제입니다. WHERE PRICE = (SELECT MAX(PRICE) FROM FOOD_PRODUCT)먼저 MAX 함수를 이용해 최대값을 찾아둡니다.WHERE 절에서 그 값과 ..

DB/SQL 2025.02.13

[SQL]재구매가 일어난 상품과 회원 리스트 구하기 - SQL 고득점 Kit

문제코딩테스트 연습 - 재구매가 일어난 상품과 회원 리스트 구하기 | 프로그래머스 스쿨 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이SELECT USER_ID, PRODUCT_IDFROM ONLINE_SALEGROUP BY USER_ID, PRODUCT_IDHAVING COUNT(*) > 1ORDER BY USER_ID ASC, PRODUCT_ID DESC;이 문제에선 가장 중요한 건 HAVING 과 COUNT(*)입니다. HAVING이란?그룹핑 후 그룹 결과에서 조건에 따라 필터링 그러면 WHERE이랑 차이점이 뭘까요?WHERE 은 그룹핑을 하기 전에 조건에 따라 먼저 필터링을 합니다..

DB/SQL 2025.02.13

[SQL]특정 세대의 대장균 찾기 - SQL 고득점 Kit

문제코딩테스트 연습 - 특정 세대의 대장균 찾기 | 프로그래머스 스쿨 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이 - 단순하게 푸는 방식WITH FIRST_CTE AS ( SELECT ID FROM ECOLI_DATA WHERE PARENT_ID IS NULL),SECOND_CTE AS ( SELECT ID FROM ECOLI_DATA WHERE PARENT_ID IN (SELECT * FROM FIRST_CTE))SELECT ID FROM ECOLI_DATAWHERE PARENT_ID IN (SELECT * FROM SECOND_CTE)ORDER BY ID이 ..

DB/SQL 2025.02.12

[SQL]서울에 위치한 식당 목록 출력하기 - SQL 고득점 Kit

문제코딩테스트 연습 - 서울에 위치한 식당 목록 출력하기 | 프로그래머스 스쿨 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이SELECT INFO.REST_ID, INFO.REST_NAME, INFO.FOOD_TYPE, INFO.FAVORITES, INFO.ADDRESS, ROUND(AVG(REVIEW.REVIEW_SCORE), 2) AS SCOREFROM REST_INFO AS INFOJOIN REST_REVIEW AS REVIEWON INFO.REST_ID = REVIEW.REST_IDWHERE INFO.ADDRESS LIKE '서울%'GROUP BY INFO.R..

DB/SQL 2025.02.12

[SQL]3월에 태어난 여성 회원 목록 출력하기 - SQL 고득점 Kit

문제코딩테스트 연습 - 3월에 태어난 여성 회원 목록 출력하기 | 프로그래머스 스쿨 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d') AS DATE_OF_BIRTHFROM MEMBER_PROFILEWHERE TLNO IS NOT NULL AND DATE_OF_BIRTH LIKE '%-03-%' AND GENDER = 'W'ORDER BY MEMBER_ID; 이 문제에서 포인트는 NULL 체크와 DATE에서 월을 뽑아내는 것과 ..

DB/SQL 2025.02.11

[SQL]평균 일일 대여 요금 구하기 - SQL 고득점 Kit

문제코딩테스트 연습 - 평균 일일 대여 요금 구하기 | 프로그래머스 스쿨 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이SELECT ROUND(AVG(DAILY_FEE)) AS AVERAGE_FEE FROM CAR_RENTAL_COMPANY_CARWHERE CAR_TYPE = 'SUV' 가장 기본적인 SELECT 문제이다.여기서 중요한 것은 ROUND, AVG, AS 키워드라고 할 수 있다. ROUND는 기본적으로 소수점 첫 번째 자리에서 반올림을 하는 함수이다.하지만 경우에 따라 두 번째 자리에서도 하고 싶을 수도 있을 것이다.이럴 땐, ROUND(값, 2) 이런 식으로 작성하면 된다. AVG는 평..

DB/SQL 2025.02.11