MariaDB 데이터 그룹화: GROUP BY 절 사용법
데이터베이스에서 데이터를 그룹화하여 요약 정보를 얻는 것은 매우 유용한 기능입니다. MariaDB에서는 GROUP BY
절을 사용하여 데이터를 그룹화하고, 각 그룹에 대한 집계 연산을 수행할 수 있습니다. 이 글에서는 GROUP BY
절의 사용법과 함께 여러 예제를 소개합니다.
GROUP BY 절 기본 사용법
GROUP BY
절은 SELECT 문에서 사용되어, 지정된 열을 기준으로 데이터를 그룹화합니다. 각 그룹에 대해 집계 함수(COUNT, SUM, AVG, MAX, MIN 등)를 사용하여 요약 정보를 계산할 수 있습니다.
구문
SELECT column_name1, aggregate_function(column_name2)
FROM table_name
GROUP BY column_name1;
테스트 테이블 및 샘플 데이터
먼저, sales
라는 테스트 테이블을 생성하고 샘플 데이터를 삽입하겠습니다.
테이블 생성
-- sales 테이블 생성
CREATE TABLE sales (
id INT AUTO_INCREMENT PRIMARY KEY,
product_name VARCHAR(50),
category VARCHAR(50),
quantity INT,
price DECIMAL(10, 2),
sale_date DATE
);
샘플 데이터 삽입
-- 샘플 데이터 삽입
INSERT INTO sales (product_name, category, quantity, price, sale_date) VALUES
('Laptop', 'Electronics', 2, 1200.00, '2024-05-01'),
('Mouse', 'Electronics', 5, 25.00, '2024-05-01'),
('Keyboard', 'Electronics', 3, 45.00, '2024-05-02'),
('Monitor', 'Electronics', 2, 300.00, '2024-05-03'),
('Desk', 'Furniture', 1, 150.00, '2024-05-01'),
('Chair', 'Furniture', 4, 85.00, '2024-05-02'),
('Lamp', 'Furniture', 6, 20.00, '2024-05-03'),
('Notebook', 'Stationery', 10, 2.50, '2024-05-01'),
('Pen', 'Stationery', 20, 1.20, '2024-05-02'),
('Pencil', 'Stationery', 15, 0.80, '2024-05-03');
GROUP BY 절 예제
예제 1: 카테고리별 총 판매량 구하기
각 카테고리별로 총 판매량을 구하는 예제입니다.
SELECT category, SUM(quantity) AS total_quantity
FROM sales
GROUP BY category;
결과는 각 카테고리별로 총 판매된 상품의 수를 보여줍니다.
예제 2: 카테고리별 평균 가격 구하기
각 카테고리별로 평균 가격을 구하는 예제입니다.
SELECT category, AVG(price) AS average_price
FROM sales
GROUP BY category;
결과는 각 카테고리별로 상품의 평균 가격을 보여줍니다.
예제 3: 카테고리별 최대 판매 가격 구하기
각 카테고리별로 최대 판매 가격을 구하는 예제입니다.
SELECT category, MAX(price) AS max_price
FROM sales
GROUP BY category;
결과는 각 카테고리별로 가장 비싼 상품의 가격을 보여줍니다.
참고할 만한 사이트
더 자세한 내용은 다음 사이트들을 참고하세요.
관련 이전 게시글
- MariaDB SELECT 문 사용법 및 DISTINCT 중복 제거
- MariaDB 데이터 형식 변환: CAST 및 CONVERT 함수
- MariaDB 날짜 및 시간 데이터 형식 변환 방법
- MariaDB 문자열 자르기: LEFT, RIGHT, SUBSTRING 함수
- MariaDB 대소문자 변환 및 치환: LOWER, UPPER, REPLACE 함수
이 글이 도움이 되셨다면 공유 부탁 드립니다.