본문 바로가기
728x90

전체 글344

[MySQL] 프로그래머스 GROUP BY 16 가격대별 상품 개수 구하기 문제 PRODUCT 테이블에서 만원 단위의 가격대 별로 상품 개수를 출력하는 SQL 문을 작성해주세요. 이때 컬럼명은 각각 컬럼명은 PRICE_GROUP, PRODUCTS로 지정해주시고 가격대 정보는 각 구간의 최소금액(10,000원 이상 ~ 20,000 미만인 구간인 경우 10,000)으로 표시해주세요. 결과는 가격대를 기준으로 오름차순 정렬해주세요. 풀이 SELECT CASE WHEN PRICE BETWEEN 0 AND 19999 THEN 10000 WHEN PRICE BETWEEN 20000 AND 29999 THEN 20000 WHEN PRICE BETWEEN 30000 AND 39999 THEN 30000 WHEN PRICE BETWEEN 40000 AND 49999 THEN 40000 WHEN.. 2023. 10. 1.
[MySQL] 프로그래머스 GROUP BY 15 입양 시각 구하기(2) . 2023. 10. 1.
[MySQL] 프로그래머스 GROUP BY 14 년, 월, 성별별 상품 구매 회원 수 구하기 문제 USER_INFO 테이블과 ONLINE_SALE 테이블에서 년, 월, 성별 별로 상품을 구매한 회원수를 집계하는 SQL문을 작성해주세요. 결과는 년, 월, 성별을 기준으로 오름차순 정렬해주세요. 이때, 성별 정보가 없는 경우 결과에서 제외해주세요. 풀이 SELECT YEAR(SALES_DATE) YEAR , MONTH(SALES_DATE) MONTH , U.GENDER , COUNT(DISTINCT U.USER_ID) USERS -- 상품을 구매한 회원수를 집계(중복 제거) FROM USER_INFO U INNER JOIN ONLINE_SALE O ON U.USER_ID = O.USER_ID WHERE U.GENDER IS NOT NULL -- 성별 정보가 없는 경우 결과에서 제외 GROUP BY .. 2023. 10. 1.
[MySQL] 프로그래머스 GROUP BY 13 입양 시각 구하기(1) 문제 09:00부터 19:59까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회하는 SQL문을 작성해주세요. 이때 결과는 시간대 순으로 정렬해야 합니다. 풀이 SELECT DATE_FORMAT(DATETIME, '%H') HOUR , COUNT(ANIMAL_ID) COUNT FROM ANIMAL_OUTS WHERE DATE_FORMAT(DATETIME, '%H') BETWEEN '09' AND '19' GROUP BY DATE_FORMAT(DATETIME, '%H') ORDER BY HOUR 처음에 '9시부터 19시 사이' 조건을 HAVING 절에 썼다. WHERE절과 HAVING절 헷갈린다. 2023. 10. 1.
[MySQL] 프로그래머스 GROUP BY 12 동명 동물 수 찾기 문제 동물 보호소에 들어온 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성해주세요. 이때 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회해주세요. 풀이 SELECT NAME , COUNT(NAME) COUNT FROM ANIMAL_INS GROUP BY NAME HAVING COUNT(NAME) > 1 ORDER BY NAME GROUP BY 이후 필터링은 HAVING 절에서 한다. 2023. 10. 1.
[MySQL] 프로그래머스 GROUP BY 11 고양이와 개는 몇 마리 있을까 문제 동물 보호소에 들어온 동물 중 고양이와 개가 각각 몇 마리인지 조회하는 SQL문을 작성해주세요. 이때 고양이를 개보다 먼저 조회해주세요. 풀이 SELECT ANIMAL_TYPE, COUNT(ANIMAL_ID) COUNT FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE 2023. 10. 1.
728x90