https://www.kaggle.com/datasets/mirichoi0218/insurance/data
이번에도 캐글 데이터를 이용하여 피벗 테이블을 만들어 볼 것입니다.
기본구조
SELECT 기준컬럼
,max(if(전체컬럼='조_1', cnt_c, 0)) "조_1"
,max(if(전체컬럼='조_2', cnt_c, 0)) "조_2"
,max(if(전체컬럼='조_3', cnt_c, 0)) "조_3"
,max(if(전체컬럼='조_4', cnt_c, 0)) "조_4"
FROM
(SELECT 기준커럼
,case when 조건1 then '조_1'
when 조건2 then '조_2'
when 조건3 then '조_3'
else '조_4' end 전체컬럼
, count(1) cnt_c
from
group by 기준컬럼) a
group by 기준컬럼
이렇게 보면 이해가 잘 안가실 겁니다. 그래서 예제를 통해 테이블을 만들어 봅시다.
[문제] insurance 테이블에서 region 을 기준으로 bmi를 그룹화 하여 구간별 인구분포 정도를 피벗 테이블로 만들어 보세요.
insurance 테이블

결과 테이블
