집계 쿼리 만들 때 쓰이는 것... Group by 를 써서 데이터를 가져왔는데 그 데이터는 숫자 코드로 되어있다(1 :사과 , 2: 포도) 숫자 코드는 보기 안좋으니까 글자로 바꾸려는데, 쿼리에서 조건문을 쓰려면 어떻게 할까? SELECT CODE, COUNT(*) AS COUNT FROM TEST WHERE DTTM = "20120802"; GROUP BY CODE 가져와진 값이 아래와 같다고 치자 CODE가 1이면 사과의 합 CODE가 2이면 포도의 합이라고 바꾸고 싶으면??? SELECT CASE CODE WHEN 1 THEN '사과의 합' ELSE '포도의 합' END, COUNT(*) AS COUNT FROM TEST WHERE DTTM = "20120802"; GROUP BY CODE 이러면 된다.
CASE CODE WHEN 1 THEN '사과의 합' ELSE '포도의 합' END, CODE컬럼이 1이면 '사과의 합'으로 바꾸고 1이 아니면 '포도의 합'으로 바꾼다. 그럼 아래같이 데이터가 출력될 것이다 CODE | COUNT | 사과의 합 | 50 | 포도의 합 | 70 |
조건을 더 추가하고 싶으면 컬럼명 WHEN 1 THEN '바꿀값1' WHEN 2 THEN '바꿀값2'.... ELSE 3 END WHEN 바꿀 값 THEN 이 것을 더 추가해주면 된다 출처: http://marobiana.tistory.com/6 [Take Action] |
|
|