주요 개념 : 일부 선택 항목과 함께 3 개의 테이블 (임시 테이블)을 만들고 1과 2를 취해 비교하고 싶습니다.임시 테이블을 사용하는 Oracle 저장 프로 시저
결과 삽입 3 테이블.
create or replace PROCEDURE CHECK_PARAMS
AS
TYPE row IS RECORD (id NUMBER,
count_id NUMBER);
TYPE my_table_type IS TABLE OF row;
first my_table_type;
second my_table_type;
third my_table_type;
BEGIN
SELECT id, count_id bulk collect -- GOOD SELECT
INTO first
FROM
(SELECT test1.A_ID id,
COUNT(test1.A_ID) count_id
FROM MY_OTHER_TABLE1 test1,
MY_OTHER_TABLE2 test2
WHERE test1.A_ID = test2.A_ID
GROUP BY test1.A_ID);
SELECT id, count_id bulk collect -- GOOD SELECT
INTO first
FROM
(SELECT test1.A_ID id,
COUNT(test1.A_ID) count_id
FROM MY_OTHER_TABLE3 test1,
MY_OTHER_TABLE4 test2
WHERE test1.A_ID = test2.A_ID
GROUP BY test1.A_ID);
SELECT id, count_id bulk collect -- ORACLE CAN'T FIND MY TEMP TABLES
INTO third
FROM frist, second; -- **HERE I GOT ERROR: ORA-00942 table or view does not exist**
이 문제점은 무엇입니까 :
내 절차는 같다?
한 가지 문제는 최종 선택에서 오타를 가지고있다. FROM first 대신 FREST FROM이 있습니다. – BateTech