코테/프로그래머스

[MySQL/Lv.2] GROUP BY

imname1am 2023. 4. 7. 14:43
반응형

 

     


    📍 고양이와 개는 몇 마리 있을까 (59040번)

    SELECT   ANIMAL_TYPE, COUNT(*) COUNT
    FROM     ANIMAL_INS
    GROUP BY ANIMAL_TYPE
    ORDER BY ANIMAL_TYPE;

    - COUNT() : 개수 세기


    📍 동명 동물 수 찾기 (59041번)

    SELECT   NAME, COUNT(IFNULL(NAME,0)) AS COUNT
    FROM     ANIMAL_INS
    GROUP BY NAME
    HAVING   COUNT(NAME) >= 2
    ORDER BY NAME;

     

     

    ** 다른 풀이 **

     

    [프로그래머스]GROUP BY - 동명 동물 수 찾기

    동명 동물 수 찾기 programmers.co.kr/learn/courses/30/lessons/59041 코딩테스트 연습 - 동명 동물 수 찾기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는

    moonsbeen.tistory.com

     


    📍 입양 시각 구하기(1) (59412번)

    SELECT   HOUR(DATETIME) HOUR, COUNT(ANIMAL_ID) COUNT
    FROM     ANIMAL_OUTS
    GROUP BY HOUR(DATETIME)
    HAVING   HOUR BETWEEN 9 AND 19
    ORDER BY HOUR

    - HOUR() : DATETIME에서 시간 추출

     

     

    ** 다른 풀이 **

     

    [MYSQL] 입양 시각 구하기(1) (프로그래머스/Level 2)

    프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설

    suminii.tistory.com

     

    [프로그래머스] 입양 시각 구하기(1) - MySQL

    레벨 2https://programmers.co.kr/learn/courses/30/parts/17044이 문제는 09:00부터 19:59까지, 각 시간대 별로 입양이 몇건 발생했는지 조회하는 SQL문을 작성해야하고 시간대 순으로 정렬해야한다.출력 예시는 다

    velog.io

     


    📍 년, 월, 성별 별 상품 구매 회원 수 구하기 (131532번)

    SELECT   YEAR(SALES_DATE) YEAR, MONTH(SALES_DATE) MONTH, GENDER, COUNT(DISTINCT UI.USER_ID) USERS
    FROM     ONLINE_SALE OS
    JOIN     USER_INFO UI ON OS.USER_ID = UI.USER_ID
    WHERE    GENDER IS NOT NULL
    GROUP BY YEAR(SALES_DATE), MONTH(SALES_DATE), GENDER
    ORDER BY YEAR(SALES_DATE), MONTH(SALES_DATE), GENDER;

    - YEAR()    DATETIME에서 추출

    - MONTH() : DATETIME에서 추출

     

     

    ** 참고 **

     

    프로그래머스 - 년, 월, 성별 별 상품 구매 회원 수 구하기(MySQL)

    <span style="color:>년 ➡️ YEAR(판매일)월 ➡️ MONTH(판매일)성별 ➡️ GENDER\*\*❗상품을 구매한 회원 수 ➡️ COUNT( DISTINCT USER_ID)동일한 날짜, 회원 ID, 상품 ID 조합에 대해서는 하나의 판매 데이

    velog.io

     


    📍 가격대 별 상품 개수 구하기 (131530번)

    SELECT   FLOOR(PRICE/10000) * 10000  PRICE_GROUP, COUNT(*) PRODUCTS
    FROM     PRODUCT
    GROUP BY PRICE_GROUP
    ORDER BY PRICE_GROUP;

    - FLOOR() : 소수점 버림

     

    ** 참고 **

     

    [SQL] 가격대 별 상품 개수 구하기(프로그래머스/MySQL/Level 2)

    안녕하세요! 데코입니다! 오늘은 프로그래머스 코딩테스트 연습에 있는 "가격대 별 상품 개수 구하기" 문제를 포스팅하려고 합니다! 바로 포스팅 시작할게요! :) (출처 : https://school.programmers.co.kr/

    kkw-da.tistory.com

     


    📍 진료과별 총 예약 횟수 출력하기 (132202번)

    SELECT   MCDP_CD 진료과코드, COUNT(MCDP_CD) 5월예약건수
    FROM     APPOINTMENT
    WHERE    APNT_YMD LIKE '2022-05%'
    GROUP BY MCDP_CD
    ORDER BY 5월예약건수, MCDP_CD;

     

     

    ** 다른 풀이 **

    WHERE문에서 LIKE 말고 YEAR(APNT_YMD) = '2002 ' AND MONTH(APNT_YMD) = '05' 이렇게 작성하심.

     

    [MYSQL] 진료과별 총 예약 횟수 출력하기 (프로그래머스/Level 2)

    프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설

    suminii.tistory.com

     

     

    ** 참고 **

     

    진료과별 총 예약 횟수 출력하기

    문제 설명 예시 나의 풀이

    velog.io

     


    📍 성분으로 구분한 아이스크림 총 주문량 (133026번)

    SELECT    INGREDIENT_TYPE, SUM(TOTAL_ORDER) TOTAL_ORDER
    FROM      FIRST_HALF A
    JOIN      ICECREAM_INFO B ON A.FLAVOR = B.FLAVOR
    GROUP BY  INGREDIENT_TYPE
    ORDER BY  TOTAL_ORDER;

    - SUM() : 총 합 계산

     

     


    📍 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 (151137번)

    SELECT CAR_TYPE, COUNT(*) CARS
    FROM   CAR_RENTAL_COMPANY_CAR 
    WHERE  OPTIONS LIKE '%통풍시트%'
    OR OPTIONS LIKE '%열선시트%'
    OR OPTIONS LIKE '%가죽시트%'
    GROUP BY CAR_TYPE
    ORDER BY CAR_TYPE;

     

     

    ** 다른 풀이 **

    그냥 WHERE OPTIONS LIKE '%시트%' 한 번만 해주면 되는 것이었다!!!!🤸‍♀️

     

    [프로그래머스/SQL] 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 오라클(Oracle)

    츄르사려고 코딩하는집사입니다. 1. [프로그래머스/SQL] 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 오라클(Oracle) 2. 문제 출처 https://school.programmers.co.kr/learn/courses/30/lessons/151137 프로그

    yongku.tistory.com

     

     

    ** 참고 **

     

    [프로그래머스] 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 - GROUP BY

    자동차 종류별 - GROUP BY CAR_TYPE 특정 옵션 - LIKE '%옵션%' 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_T

    yangsosolife.tistory.com

     

    반응형