전체 글

Garbage in, garbage out
알고리즘

[SQL]프로그래머스 Lv.4 서울에 위치한 식당 목록 출력하기

✅ 코드 # 서울에 위치한 레스토랑 리스트 WITH REST_IN_SEOUL AS ( SELECT * FROM REST_INFO WHERE ADDRESS LIKE '서울%' ) SELECT I.REST_ID AS REST_ID , I.REST_NAME AS REST_NAME , I.FOOD_TYPE AS FOOD_TYPE , I.FAVORITES AS FAVORITES , I.ADDRESS AS ADDRESS , ROUND(AVG(R.REVIEW_SCORE), 2) AS REVIEW_SCORE FROM REST_IN_SEOUL AS I INNER JOIN REST_REVIEW AS R ON I.REST_ID = R.REST_ID GROUP BY REST_ID ORDER BY REVIEW_SCORE DES..

알고리즘

[SQL]프로그래머스 Lv.4 식품분류별 가장 비싼 식품의 정보 조회하기

✅ 코드 WITH T2 AS ( SELECT CATEGORY , MAX(PRICE) AS PRICE FROM FOOD_PRODUCT GROUP BY CATEGORY ) SELECT T1.CATEGORY , T1.PRICE , T1.PRODUCT_NAME FROM FOOD_PRODUCT AS T1 INNER JOIN T2 ON T1.CATEGORY = T2.CATEGORY AND T1.PRICE = T2.PRICE WHERE T1.CATEGORY IN ('과자', '국', '김치', '식용유') ORDER BY T1.PRICE DESC WITH문(또는 FROM절 서브쿼리)를 사용하면 쉽게 풀이가 가능합니다. 식품분류별 가장 높은 가격의 값을 가져오면 됩니다. 참고로 Lv.3 문제와 유사합니다. [SQL]프..

알고리즘

[SQL]프로그래머스 Lv.3 없어진 기록 찾기

✅ 코드 SELECT O.ANIMAL_ID , O.NAME FROM ANIMAL_OUTS AS O LEFT JOIN ANIMAL_INS AS I ON O.ANIMAL_ID = I.ANIMAL_ID WHERE I.ANIMAL_ID IS NULL; LEFT JOIN을 수행한 풀이입니다.

알고리즘

[SQL]프로그래머스 Lv.2 재구매가 일어난 상품과 회원 리스트 구하기

✅ 코드 2개의 컬럼을 사용하여 그룹화 했습니다. SELECT USER_ID , PRODUCT_ID FROM ONLINE_SALE GROUP BY USER_ID , PRODUCT_ID HAVING COUNT(ONLINE_SALE_ID) >= 2 ORDER BY USER_ID , PRODUCT_ID DESC;

알고리즘

[SQL]프로그래머스 Lv.3 즐겨찾기가 가장 많은 식당 정보 출력하기

✅ 코드 SELECT T2.FOOD_TYPE AS FOOD_TYPE , T2.REST_ID AS REST_ID , T2.REST_NAME AS REST_NAME , T2.FAVORITES AS FAVORITES FROM (SELECT FOOD_TYPE, MAX(FAVORITES) AS FAVORITES FROM REST_INFO GROUP BY FOOD_TYPE) AS T1 INNER JOIN REST_INFO AS T2 ON T1.FOOD_TYPE = T2.FOOD_TYPE AND T1.FAVORITES = T2.FAVORITES ORDER BY FOOD_TYPE DESC; 서브쿼리를 사용한 풀이입니다. 🔎 참고 SELECT FOOD_TYPE , REST_ID , REST_NAME , MAX(FAVOR..

알고리즘

[SQL]프로그래머스 Lv.3 조건별로 분류하여 주문상태 출력하기

✅ 코드 SELECT ORDER_ID , PRODUCT_ID , DATE_FORMAT(OUT_DATE, '%Y-%m-%d') , CASE WHEN OUT_DATE IS NULL THEN '출고미정' WHEN OUT_DATE

알고리즘

[SQL]프로그래머스 Lv.2 가격대별 상품 개수 구하기

✅ 코드 SELECT (PRICE - (PRICE % 10000)) AS PRICE_GROUP , COUNT(PRODUCT_ID) AS PRODUCTS FROM PRODUCT GROUP BY PRICE_GROUP ORDER BY PRICE_GROUP; 그룹화 기준을 SELECT절에 선언할 수 있습니다. 기존 컬럼의 값을 활용하여 새로운 기준을 만들 수 있습니다.

알고리즘

[SQL]프로그래머스 Lv.3 조건에 맞는 사용자와 총 거래금액 조회하기

✅ 코드 SELECT U.USER_ID AS USER_ID , U.NICKNAME AS NICKNAME , SUM(PRICE) AS TOTAL_SALES FROM USED_GOODS_BOARD AS B INNER JOIN USED_GOODS_USER AS U ON B.WRITER_ID = U.USER_ID WHERE B.STATUS = 'DONE' GROUP BY USER_ID HAVING SUM(PRICE) >= 700000 ORDER BY TOTAL_SALES; 두 테이블에 대해 INNER JOIN을 수행한 후에 제약 조건들을 지정했습니다.

truezero
데이터 공부하는 제이슨