Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 독후감
- matplotlib
- SQL
- MATLAB
- 파이썬
- 파이썬 시각화
- 블로그
- 딥러닝
- Google Analytics
- Pandas
- Tistory
- 시각화
- 티스토리
- MySQL
- Visualization
- Linux
- 한빛미디어
- python visualization
- 한빛미디어서평단
- 매틀랩
- 서평
- 통계학
- 텐서플로
- 서평단
- 리눅스
- 월간결산
- Blog
- tensorflow
- Python
- Ga
Archives
- Today
- Total
pbj0812의 코딩 일기
[SQL] ROLLUP을 사용한 카테고리별 합계 본문
0. 목표
- ROLLUP 을 사용한 카테고리별 합계 구하기
1. 실습
1) 테이블 생성
CREATE TABLE pbj_db.rollup_test
(
year INT NOT NULL,
country VARCHAR(32) NOT NULL,
product VARCHAR(32) NOT NULL,
profit INT NOT NULL
) ENGINE = INNODB;
2) 데이터 삽입
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2000, 'Finland', 'Computer', 1500);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2000, 'Finland', 'Phone', 100);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2001, 'Finland', 'Phone', 10);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2000, 'India', 'Calculator', 75);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2000, 'India', 'Computer', 1200);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2001, 'India', 'Calculator', 75);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2000, 'USA', 'Calculator', 75);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2000, 'USA', 'Computer', 1500);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2001, 'USA', 'Calculator', 50);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2001, 'USA', 'Computer', 1200);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2001, 'USA', 'TV', 100);
INSERT INTO pbj_db.rollup_test(year, country, product, profit) VALUES(2001, 'USA', 'TV', 150);
3) 데이터 확인
SELECT * FROM pbj_db.rollup_test;
- 결과
4) ROLLUP을 통합 합계
SELECT
country,
product,
SUM(profit)
FROM pbj_db.rollup_test
GROUP BY country, product WITH ROLLUP;
- 결과
5) COALESCE을 통한 NULL 값 채우기
SELECT
COALESCE(country,"ALL countries") as country,
COALESCE(product,"ALL products") as product,
SUM(profit)
FROM pbj_db.rollup_test
GROUP BY country, product WITH ROLLUP;
- 결과
2. 참고
- SQL에서 소계, 합계를 계산하는 ROLLUP 활용하기
'ComputerLanguage_Program > SQL' 카테고리의 다른 글
[SQL] MySQL UPSERT 실습 (0) | 2020.08.10 |
---|---|
[SQL] MySQL 워크벤치로 csv 파일 import 하기 (0) | 2020.08.08 |
[SQL] @rownum을 사용한 랭크 매기기 (0) | 2020.07.30 |
[SQL] UPDATE 구문 실습 (0) | 2020.07.21 |
[SQL] MySQL Stored Procedure을 이용하여 주기적으로 현재 시각 저장하기 (0) | 2020.07.13 |
Comments