상세 컨텐츠

본문 제목

case group by mysql (mysql group by case)

DB/MySql

by husks 2016. 8. 9. 10:04

본문

반응형


쿼리를 사용하다 보면 group by 를 할때 case문을 이용하여 group by 를 해야 하는 경우가 있습니다.


예를 들면 billing 테이블에 admission_type_code 컬럼에 01, 03, 04 값이 들어있다고 가정하였을때 


01 : Y 이고 03, 04 : N 으로 group by를 해야 하는 경우에 대한 쿼리 예제 입니다.


group by 절에도 case문을 사용하고 select 절에도 case문을 사용하시면 됩니다.


아래 예제 입니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
SELECT
    reserve_no,
 
    case
    when admission_type_code = '01' then 'Y'
    else 'N'
    end as payment_type_code,
 
    MIN(billing_status_code) billing_status_code
FROM
    billing
WHERE
    trading_date = '20160808'
GROUP BY
    reserve_no,
 
    case
    when admission_type_code = '01' then 'Y'
    else 'N'
    end;



반응형

관련글 더보기

댓글 영역