* 사과, 감, 포도는 '과일'로, 자동차, 오토바이는 '탈것'으로 분류 한다고 생각해보자.
* 우선 Column_03을 만들어서 분류하는 방법은 다음과 같다.
SELECT *,
CASE WHEN Column_01 in ('감', '사과', '포도') THEN '과일'
WHEN Column_01 in ('자동차', '오토바이') THEN '탈것'
END Column_3
FROM A_Table
* 분류한 Column_03를 이용해 Row로 Count 해보자.
SELECT t.Column_3, COUNT(*) Counting
FROM (SELECT *,
CASE WHEN Column_01 in ('감', '사과', '포도') THEN '과일'
WHEN Column_01 in ('자동차', '오토바이') THEN '탈것'
ELSE '기타'
END Column_3
FROM A_Table
) AS t
GROUP BY Column_3
* 반대로, Column으로 Count 하려면?
* 마찬가지로 CASE문을 활용하면 해결할 수 있다.
SELECT
COUNT(CASE WHEN Column_01 in ('감', '사과', '포도') THEN 1 END) 과일,
COUNT(CASE WHEN Column_01 in ('자동차', '오토바이') THEN 1 END) 탈것
FROM A_Table
* Count 뿐만 아니라 Sum도 위와 같은 방법을 사용하면 된다.
댓글 없음:
댓글 쓰기