-
[MySQL] 실전 유용 문법 - Case데이터 공부하기 2022. 8. 29. 23:26
CASE는 경우에 따라 원하는 값을 새 필드에 출력해볼때 사용한다
예시 코드 10000점보다 높은 포인트를 가지고 있으면 '잘 하고 있어요!', 평균보다 낮으면 '조금 더 달려주세요!' 라고 표시해 주려면 어떻게 해야할까요? select pu.point_user_id, pu.point,
(case
when pu.point > 10000 then '잘 하고 있어요!'
else '조금 더 달려주세요!'
END) as 구분Subquery를 이용하면 통계를 낼 수 있음
기본 Subquery 사용! with절로 정리! select pu.point_user_id, pu.point,
case
when pu.point > 10000 then '1만 이상'
when pu.point > 5000 then '5천 이상'
else '5천 미만'
END as lv
from point_users puselect level, count(*) as cnt from (
select pu.point_user_id, pu.point,
case
when pu.point > 10000 then '1만 이상'
when pu.point > 5000 then '5천 이상'
else '5천 미만'
END as lv
from point_users pu
) a
group by lvwith table1 as (
select pu.point_user_id, pu.point,
case
when pu.point > 10000 then '1만 이상'
when pu.point > 5000 then '5천 이상'
else '5천 미만'
END as lv
from point_users pu
)
select lv, count(*) as cnt from table1
group by lv'데이터 공부하기' 카테고리의 다른 글
[MySQL] 문법 총정리 (0) 2022.08.29 [MySQL] 실전 유용 문법 - 문자열 (0) 2022.08.29 [MySQL] 'with 절' in Subquery (0) 2022.08.29 [MySQL] 수업 4주차 - Subquery (0) 2022.08.29 [MySQL] 수업 3주차 - Join (0) 2022.08.08