첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170

■ 중첩 테이블과 테이블 데이터를 병합하는 방법을 보여준다.

 

▶ 예제 코드 (SQL)

-- 작가 중첩 테이블 타입을 생성한다.
CREATE TYPE AUTHOR_TABLE_TYPE IS TABLE OF VARCHAR2(100);

-- 작가 테이블을 생성한다.
CREATE TABLE AUTHOR (NAME VARCHAR2(100));

-- 작가 테이블에 데이터를 추가한다.
INSERT INTO AUTHOR VALUES('Robert Harris');
INSERT INTO AUTHOR VALUES('Tom Segev'    );
INSERT INTO AUTHOR VALUES('Toni Morrison');

SET SERVEROUTPUT ON;

DECLARE
    -- 작가 중첩 테이블 타입의 변수를 정의하고 초기화 한다.
    V_AUTHOR_TABLE AUTHOR_TABLE_TYPE := AUTHOR_TABLE_TYPE
    (
        'Sheri S. Tepper'
       ,'Orson Scott Card'
       ,'Gene Wolfe'
    );
BEGIN
    -- 작가 중첩 테이블의 데이터와 작가 테이블 데이터를 병합하고 출력한다.
    FOR AUTHOR_RECORD IN
    (
        SELECT COLUMN_VALUE AS NAME FROM TABLE(V_AUTHOR_TABLE)
        UNION
        SELECT NAME FROM AUTHOR
    )
    LOOP
        DBMS_OUTPUT.PUT_LINE(AUTHOR_RECORD.NAME);
    END LOOP;
END;
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요