필드값을 레코드 값으로 변환
---- -----
1 Y
1 N
2 Y
2 Y
...
위와 같을 경우 SEQ코드별로 winner의 코드값이 'Y'인 COUNT 값과 'N'인 COUNT 값이 필요할경우
아래와 같이 한 레코드 형식으로 쿼리를 날려보자.
SELECT seq, NVL(SUM (DECODE (winner, 'Y', 1)),0) Y,
NVL(SUM (DECODE (winner, 'N', 1)),0) N
FROM t_test
WHERE seq > 0
GROUP BY seq
결과는 아래와 같다.
SEQ Y N
----- -- --
1 1 1
2 2 0
.....
아래와 같이 T_TEST테이블의 조회되는 데이터가 있다.
seq winner---- -----
1 Y
1 N
2 Y
2 Y
...
위와 같을 경우 SEQ코드별로 winner의 코드값이 'Y'인 COUNT 값과 'N'인 COUNT 값이 필요할경우
아래와 같이 한 레코드 형식으로 쿼리를 날려보자.
SELECT seq, NVL(SUM (DECODE (winner, 'Y', 1)),0) Y,
NVL(SUM (DECODE (winner, 'N', 1)),0) N
FROM t_test
WHERE seq > 0
GROUP BY seq
결과는 아래와 같다.
SEQ Y N
----- -- --
1 1 1
2 2 0
.....
'DB > Oracle' 카테고리의 다른 글
session 조회 / kill (0) | 2016.02.04 |
---|---|
오라클 사전정보 조회 (0) | 2016.02.04 |
중복 데이터 제거(partition by) (0) | 2016.02.04 |
oracle 랜덤하게 조회 (0) | 2016.02.04 |
ORDER BY 대신에 INDEX 힌트를 사용하자.. (0) | 2016.02.04 |