SQL 프로그래머스 문제 - 카테고리 별 상품 개수 구하기
·
DataEngineering
-- 코드를 입력하세요 SELECT CATEGORY, COUNT(CATEGORY) FROM  (SELECT SUBSTR(PRODUCT_CODE, 1, 2) AS CATEGORY FROM PRODUCT) GROUP BY CATEGORY ORDER BY CATEGORY ;  1. SUBSTR   SELECT SUBSTR(PRODUCT_CODE, 1, 2) AS CATEGORY, COUNT(*) AS CATEGORY_COUNT FROM PRODUCTGROUP BY SUBSTR(PRODUCT_CODE, 1, 2)ORDER BY CATEGORY; -> 이렇게 GROUP BY 절을 사용할 때, 별칭으로 사용하는게 아니라 연산으로!(연산 한번에 끝내려면)-> 코드 순서를 생각해보면 된다.
SQL 프로그래머스 문제 - 자동차 평균 대여 기간 구하기
·
DataEngineering
WITH A AS( SELECT CAR_ID, ROUND(AVG(END_DATE - START_DATE + 1), 1) AS AVERAGE_DURATION FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY GROUP BY CAR_ID) SELECT * FROM A WHERE AVERAGE_DURATION >= 7 ORDER BY AVERAGE_DURATION DESC, CAR_ID DESC ;  1. 다중행 연산 사용할 때는 GROUP BY 거의 사용한다고 생각하면 된다. 2. 사용한 날짜 같은 개념을 계산할 때는 +1 꼭 해주기
SQL 프로그래머스 문제 - 조건에 부합하는 중고거래 상태 조회하기
·
DataEngineering
SELECT BOARD_ID, WRITER_ID, TITLE, PRICE, CASE     WHEN 'DONE' = STATUS THEN '거래완료'     WHEN 'SALE' = STATUS THEN '판매중'     WHEN 'RESERVED' = STATUS THEN '예약중' END AS STATUS FROM USED_GOODS_BOARD WHERE TRUNC(CREATED_DATE) = TO_DATE('2022-10-5', 'YYYY-MM-DD') ORDER BY BOARD_ID DESC ;   1. TRUNC 함수 및 SQL 문법 규칙 SELECT BOARD_ID, WRITER_ID, TITLE, PRICE, STATUS FROM USED_GOODS_BOARD WHERE TRUNC(CREAT..
HardConcentrator
Keep Calm And Carry on