SQL 열을 행으로 변환

sql 2014. 1. 23. 11:17

SELECT *
  FROM (SELECT 'AAA' AS NAME FROM DUAL
  UNION ALL
  SELECT 'BBB' AS NAME FROM DUAL
  UNION ALL
  SELECT 'CCC' AS NAME FROM DUAL
  UNION ALL
  SELECT 'DDD' AS NAME FROM DUAL)
;

 

SELECT MAX(DECODE(MOD(RN, 5), 1, NAME)) NAME1,
    MAX(DECODE(MOD(RN, 5), 2, NAME)) NAME2,
    MAX(DECODE(MOD(RN, 5), 3, NAME)) NAME3,
    MAX(DECODE(MOD(RN, 5), 4, NAME)) NAME4,
    MAX(DECODE(MOD(RN, 5), 0, NAME)) NAME5
  FROM (SELECT ROWNUM RN, NAME
    FROM (SELECT *
      FROM (SELECT 'AAA' AS NAME FROM DUAL
                        UNION ALL
                        SELECT 'BBB' AS NAME FROM DUAL
                        UNION ALL
                        SELECT 'CCC' AS NAME FROM DUAL
                        UNION ALL
                        SELECT 'DDD' AS NAME FROM DUAL)))
 GROUP BY CEIL(RN / 5);

'sql' 카테고리의 다른 글

oracle instr() 함수  (0) 2014.02.12
오라클 aes256 암호화  (0) 2014.01.28
오라클 DB 전체 테이블 컬럼 조회..  (0) 2014.01.23
게시판 내용, 카운트 한번에 가져오는 SQL  (0) 2014.01.23
오라클 CLOB 컬럼 검색 방법  (0) 2014.01.23
Posted by 무세1
,