Level 2
자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기
GROUP BY로 자동차를 종류별로 구분한다.
옵션이 쉼표로 구분되어 있는 문자열이기 때문에 '%옵션 정보%'를 통하여 통풍시트, 열선시트, 가죽시트를 옵션으로 포함하는 자동차만 따진다.
SELECT A.CAR_TYPE, COUNT(A.CAR_TYPE) AS CARS
FROM CAR_RENTAL_COMPANY_CAR A
WHERE (A.OPTIONS LIKE '%통풍시트%') OR (A.OPTIONS LIKE '%열선시트%') OR (A.OPTIONS LIKE '%가죽시트%')
GROUP BY A.CAR_TYPE
ORDER BY A.CAR_TYPE ASC
진료과별 총 예약 횟수 출력하기
진료과 코드별로 예약 건수를 구분한다.
예약 날짜에서 Year가 2022고 Month가 5인 예약 건수만 따진다.
SELECT A.MCDP_CD AS '진료과 코드', COUNT(A.MCDP_CD) AS '5월예약건수'
FROM APPOINTMENT A
WHERE YEAR(A.APNT_YMD) = 2022 AND MONTH(A.APNT_YMD) = 5
GROUP BY A.MCDP_CD
ORDER BY COUNT(A.MCDP_CD) ASC, A.MCDP_CD ASC
상품으로 구분한 아이스크림의 총 주문량
FLAVOR 속성을 통해 두 테이블을 묶는다.
그리고 재료의 속성별로 아이스크림을 구분한다.
SELECT B.INGREDIENT_TYPE, SUM(A.TOTAL_ORDER) AS TOTAL_ORDER
FROM FIRST_HALF A
INNER JOIN ICECREAM_INFO B ON A.FLAVOR = B.FLAVOR
GROUP BY B.INGREDIENT_TYPE
ORDER BY SUM(A.TOTAL_ORDER) ASC
고양이와 개는 몇 마리 있을까
SELECT A.ANIMAL_TYPE, COUNT(A.ANIMAL_TYPE) AS 'count'
FROM ANIMAL_INS A
GROUP BY A.ANIMAL_TYPE
ORDER BY A.ANIMAL_TYPE ASC
동명 동물 수 찾기
이름 값이 존재하지 않는 동물은 제외하고 이름별로 동물들을 구분한다.
HAVING 절에서 같은 이름을 가진 동물의 마릿수를 구한다.
SELECT A.NAME, COUNT(A.NAME) AS 'COUNT'
FROM ANIMAL_INS A
WHERE NAME IS NOT NULL
GROUP BY A.NAME
HAVING COUNT(A.NAME) >= 2
ORDER BY A.NAME ASC
입양 시각 구하기(1)
SELECT HOUR(A.DATETIME) AS 'HOUR', COUNT(HOUR(A.DATETIME)) AS 'COUNT'
FROM ANIMAL_OUTS A
WHERE HOUR(A.DATETIME) >= 9 AND HOUR(A.DATETIME) <= 19
GROUP BY HOUR(A.DATETIME)
ORDER BY HOUR(A.DATETIME)
가격대 별 상품 개수 구하기
1만 단위로 가격대를 따져야 하기 때문에, 가격을 10,000으로 나눈 후 FLOOR를 통해 소수점을 모두 버리고 다시 10,000을 곱한다.
SELECT FLOOR(A.PRICE / 10000) * 10000 AS 'PRICE_GROUP',
COUNT(A.PRICE / 10000) AS 'PRODUCTS'
FROM PRODUCT A
GROUP BY FLOOR(A.PRICE / 10000) * 10000
ORDER BY (A.PRICE / 10000) ASC
'Programmers > Level 1~2' 카테고리의 다른 글
[Programmers/Level 1] 문자열 내 마음대로 정렬하기(Java) (1) | 2024.09.20 |
---|---|
[Programmers/Level 1~2] IS NULL(MySQL) (0) | 2023.05.26 |
[Programmers/Level 2] JOIN(MySQL) (0) | 2023.04.06 |
[Programmers/Level 1~2] SUM, MAX, MIN(MySQL) (0) | 2023.04.06 |
[Programmers/Level 1~2] SELECT(MySQL) (0) | 2023.04.06 |