더북(TheBook)

● 컬럼을 로우로 전환

이번에는 반대로 컬럼을 로우로 변환해 보자. 먼저 대상 테이블을 만들어야 하는데 이전에 사용했던 ch14_score_table 테이블을 컬럼 형태로 변환했던 구조로 새로운 테이블을 만들고 데이터를 넣어 보자.

입력

    CREATE TABLE ch14_score_col_table  (
           YEARS     VARCHAR2(4),   -- 연도
           GUBUN     VARCHAR2(30),  -- 구분(중간/기말)
           KOREAN    NUMBER,        -- 국어점수
           ENGLISH   NUMBER,        -- 영어점수
           MATH      NUMBER,        -- 수학점수
           SCIENCE   NUMBER,        -- 과학점수
           GEOLOGY   NUMBER,        -- 지리점수
           GERMAN    NUMBER         -- 독일어점수
           );

결과

    table CH14_SCORE_COL_TABLE이(가) 생성되었습니다.

입력

    INSERT INTO ch14_score_col_table
    VALUES ('2014', '중간고사', 92, 87, 67, 80, 93, 82 );

    INSERT INTO ch14_score_col_table
    VALUES ('2014', '기말고사', 88, 80, 93, 91, 89, 83 );

    COMMIT;

    SELECT *
      FROM ch14_score_col_table;

결과

    YEARS GUBUN KOREAN ENGLISH MATH SCIENCE GEOLOGY GERMAN
    ----- ----- ------ ------- ---- ------- ------- -------
    2014  기말고사 88     80     93    91      89      83
    2014  중간고사 92     87     67    80      93      82

이제 ch14_score_col_table 테이블을 기준으로 컬럼을 로우로 변환해 보자.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.