728x90
반응형
1. 문제 설명
반응형
2. 풀이과정
해당 문제는 상품 카테고리 코드 별 상품 개수를 조회하는 문제이다.
문제에서 중요한 점은 바로 카테고리 코드 별로 조회를 해야 한다는 점이다.
~별로 조회를 할 때는 GROUP BY 구문으로 그룹을 만들어주면 된다.
GROUP BY 뒤에 만들어줄 그룹의 기준 컬럼을 적어주면 해당 컬럼의 값 별로 그룹이 만들어진다.
그룹을 만든 뒤 COUNT() 함수를 사용하면 해당 그룹별로 각 값의 개수를 조회할 수 있다.
해당 문제에서 또 한 가지로, 조회할 때 상품 카테고리 코드를 해당 값에서 앞 2자리만 조회하도록 해야 한다.컬럼의 값이 문자열일 경우 여러 문자열 함수를 사용하여 이렇게 원하는 문자열만 조회할 수 있는데, 문제에서는 앞 2자리만 조회해야 하므로 LEFT() 함수를 사용하여 왼쪽에서부터 문자를 가져오도록 한다.LEFT() 함수를 LEFT(문자열, 개수) 형식으로 지정하면 문자열의 왼쪽부터 지정한 개수만큼 문자를 조회하게 된다.
최종 결과는 상품 카테고리 코드 순으로 조회한다.
- 상품 카테고리, 상품 개수를 조회한다. 상품 카테고리는 앞 2자리만 조회한다. SELECT LEFT(PRODUCT_CODE, 2) AS CATEGORY, COUNT(PRODUCT_ID) AS PRODUCTS
- 값을 조회할 테이블을 지정한다. FROM PRODUCT
- 카테고리 코드 별로 조회를 해야 하므로 해당 컬럼 값을 기준으로 그룹을 만들어준다. GROUP BY CATEGORY
- 최종 결과는 상품 카테고리 코드 순으로 조회한다. ORDER BY CATEGORY
728x90
3. 소스코드
SELECT LEFT(PRODUCT_CODE, 2) AS CATEGORY, COUNT(PRODUCT_ID) AS PRODUCTS
FROM PRODUCT
GROUP BY CATEGORY
ORDER BY CATEGORY
728x90
반응형
'프로그래머스 > MySQL' 카테고리의 다른 글
[프로그래머스] 중성화 여부 파악하기 - MySQL - 우당탕탕 개발자 되기 프로젝트 (0) | 2024.09.25 |
---|---|
[프로그래머스] 고양이와 개는 몇 마리 있을까 - MySQL - 우당탕탕 개발자 되기 프로젝트 (0) | 2024.09.24 |
[프로그래머스] 진료과별 총 예약 횟수 출력하기 - MySQL - 우당탕탕 개발자 되기 프로젝트 (0) | 2024.09.23 |
[프로그래머스] 조건에 맞는 아이템들의 가격의 총합 구하기 - MySQL - 우당탕탕 개발자 되기 프로젝트 (0) | 2024.09.13 |
[프로그래머스] DATETIME에서 DATE로 형 변환 - MySQL - 우당탕탕 개발자 되기 프로젝트 (0) | 2024.09.10 |
[프로그래머스] NULL 처리하기 - MySQL - 우당탕탕 개발자 되기 프로젝트 (0) | 2024.09.08 |
[프로그래머스] 가격이 제일 비싼 식품의 정보 출력하기 - MySQL - 우당탕탕 개발자 되기 프로젝트 (0) | 2024.09.07 |
[프로그래머스] 중복 제거하기 - MySQL - 우당탕탕 개발자 되기 프로젝트 (0) | 2024.09.06 |