목록Database/프로그래머스 (5)
개발자는 기록이 답이다
LV.4 오프라인/온라인 판매 데이터 통합하기(정답률 : 60%) 🌟🌟🌟🌟🌟 UNION함수 https://school.programmers.co.kr/learn/courses/30/lessons/131537 (SELECT DATE_FORMAT(SALES_DATE, "%Y-%m-%d") AS SALES_DATE, PRODUCT_ID, USER_ID, SALES_AMOUNT FROM ONLINE_SALE AS N WHERE SALES_DATE LIKE '2022-03%' UNION SELECT DATE_FORMAT(SALES_DATE, "%Y-%m-%d")AS SALES_DATE, PRODUCT_ID, NULL AS USER_ID, SALES_AMOUNT FROM OFFLINE_SALE AS F WHERE ..
LV.2 재구매가 일어난 상품과 회원 리스트 구하기 (정답률 : 79%) 🌟🌟🌟 GROUP BY 2개 https://school.programmers.co.kr/learn/courses/30/lessons/131536 동일한 유저가 동일한 제품을 재구매 한 경우 SELECT USER_ID, PRODUCT_ID FROM ONLINE_SALE GROUP BY USER_ID, PRODUCT_ID HAVING COUNT(*) >=2 ORDER BY USER_ID, PRODUCT_ID DESC; GROUP BY 구문은 결과 집합을 사용자별(USER_ID) 및 제품별(PRODUCT_ID)로 그룹화합니다. 즉, USER_ID가 같으면서 PRODUCT_ID도 같은 컬럼을 그룹화하여 조회할 수 있습니다. 이렇게 그룹화된..
LV.2 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 (정답률 : 86%) 🌟🌟 정규 표현식 가능 https://school.programmers.co.kr/learn/courses/30/lessons/151137 한개의 칼럼에 데이터가 ,로 여러개가 들어있을경우 %%로 가져오기 SELECT CAR_TYPE, COUNT(CAR_TYPE) AS CARS FROM CAR_RENTAL_COMPANY_CAR WHERE OPTIONS LIKE '%열선시트%' OR OPTIONS LIKE '%통풍시트%' OR OPTIONS LIKE '%가죽시트%' GROUP BY CAR_TYPE ORDER BY CAR_TYPE; REGEXP_LIKE(칼럼명, '문자열패턴')도 사용가능 SELECT CAR_TYPE, COU..
LV.2 중성화 여부 파악하기 (정답률 : 89%) https://school.programmers.co.kr/learn/courses/30/lessons/59409 SELECT ANIMAL_ID, NAME, (CASE WHEN SEX_UPON_INTAKE LIKE 'Spayed%' THEN 'O' WHEN SEX_UPON_INTAKE LIKE 'Neutered%' THEN 'O' ELSE 'X' END) AS 중성화 FROM ANIMAL_INS; SELECT ANIMAL_ID, NAME, CASE WHEN SEX_UPON_INTAKE LIKE 'Neutered%' OR SEX_UPON_INTAKE LIKE 'Spayed%' THEN 'O' ELSE 'X' END 중성화 FROM ANIMAL_INS OR..