글
KPSCR GRADE
------ ------
10 S
9 A
8 B
7 C
6 D
위와같이 세로로 나오는 데이터를
S A B C D
-- -- -- -- --
10 9 8 7 6
가로로 바꿔주기 위해
SELECT MAX(DECODE(GRADE, 'S', KPSCR, NULL)) S,
MAX(DECODE(GRADE, 'A', KPSCR, NULL)) A,
MAX(DECODE(GRADE, 'B', KPSCR, NULL)) B,
MAX(DECODE(GRADE, 'C', KPSCR, NULL)) C,
MAX(DECODE(GRADE, 'D', KPSCR, NULL)) D
FROM (
SELECT ROWNUM ITM_CD, GRADE, KPSCR FROM ICMS.OMG_EVAL_GRADE_KPSCR WHERE GRADE = 'S'
UNION ALL
SELECT ROWNUM ITM_CD, GRADE, KPSCR FROM ICMS.OMG_EVAL_GRADE_KPSCR WHERE GRADE = 'A'
UNION ALL
SELECT ROWNUM ITM_CD, GRADE, KPSCR FROM ICMS.OMG_EVAL_GRADE_KPSCR WHERE GRADE = 'B'
UNION ALL
SELECT ROWNUM ITM_CD, GRADE, KPSCR FROM ICMS.OMG_EVAL_GRADE_KPSCR WHERE GRADE = 'C'
UNION ALL
SELECT ROWNUM ITM_CD, GRADE, KPSCR FROM ICMS.OMG_EVAL_GRADE_KPSCR WHERE GRADE = 'D'
)
GROUP BY ITM_CD
검색끝에 여러가지 쿼리가 있었고 결국 이런식으로 해주었다.
클라이언트가 x-platform인 관계로 불가피하게 쿼리에서 해결하였는데,
다행이 값이 변하지 않는 정적인 데이터들이라 가능했음.
'프로그래밍 > database' 카테고리의 다른 글
여러 row를 하나의 row로 합치기 (0) | 2012.08.20 |
---|---|
ERWin 에서 테이블 스키마 내보내기 (0) | 2011.07.04 |
랜덤하게 ROW 추출하기(오라클) (0) | 2011.06.15 |
ERWin 에서 MS-SQL 2005 연결 (0) | 2011.05.31 |
ERwin 데이타타입 디스플레이 (2) | 2010.06.18 |
RECENT COMMENT