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
반응형
그리드형(광고전용)
'Database > Oracle' 카테고리의 다른 글
[DATABASE/ORACLE] SQL%ROWCOUNT 암시적 커서 속성 사용하기 (0) | 2019.11.04 |
---|---|
[DATABASE/ORACLE] SQL%FOUND 암시적 커서 속성 사용하기 (0) | 2019.11.04 |
[DATABASE/ORACLE] DML문의 암시적 커서 속성 (0) | 2019.11.04 |
[DATABASE/ORACLE] INSERT INTO ~ SELECT ~ FROM 명령 : 데이터 추가하기 (0) | 2019.11.03 |
[DATABASE/ORACLE] 중첩 테이블 데이터 정렬해 출력하기 (0) | 2019.11.03 |
[DATABASE/ORACLE] CAST 의사 함수 사용하기 (0) | 2019.11.03 |
[DATABASE/ORACLE] TABLE 의사 함수 사용하기 (0) | 2019.11.03 |
[DATABASE/ORACLE] THE 의사 함수 : 중첩 테이블 컬럼 데이터 수정하기 (0) | 2019.11.03 |
[DATABASE/ORACLE] THE 의사 함수 : 중첩 테이블 컬럼 데이터 삭제하기 (0) | 2019.11.03 |
[DATABASE/ORACLE] THE 의사 함수 : 중첩 테이블 컬럼 데이터 추가하기 (0) | 2019.11.03 |
댓글을 달아 주세요