0
我想從table1中獲取ID,並根據檢索到的ID從table2中選擇數據。所以我打開了一個cursor1來檢索這些ID,然後我嘗試遍歷它並填充cursor2與table2的細節。調試時,我意識到cursor1被正確填充,循環工作正常,但只返回最後一條記錄。以下是我的oracle程序:遊標內循環只返回最後一條記錄
PROCEDURE TEST_LIST(P_ITEM_ID NUMBER,
P_REFCUR OUT SYS_REFCURSOR) AS
BEGIN
DECLARE CURSOR V_REFCUR is
SELECT T.ID
FROM MY_TABLE_NAME T
WHERE T.ITEM_ID = P_ITEM_ID;
BEGIN
FOR V IN V_REFCUR LOOP
IF V.ID IS NOT NULL THEN
OPEN P_REFCUR FOR
SELECT G.*
FROM MY_SECOND_TABLE G
WHERE G.ID = V.ID
ORDER BY G.TABLE_DATE;
END IF;
END LOOP;
END;
END TEST_LIST;
如何返回整個列表?我是SQL新手,感謝您的幫助。
謝謝你的回覆,它現在正在完美工作 –