我將如何存儲select語句的結果,以便我可以將結果重用到不同的表中?這也將在光標內。我將如何存儲select語句的結果,以便可以將結果重用到不同的表中?
下面是一些僞代碼,在這個例子中,我保持Select語句簡單,但在現實生活中,它是一個長連接多個連接的查詢,我必須使用相同的SQL連接兩個不同的表,很長,可以在將來改變,因此我希望能夠重用它。
我試圖創建一個視圖,並在其中存儲選擇語句的結果,但它似乎我不能創建一個視圖內遊標循環,當我嘗試我遇到「遇到符號」CREATE「」錯誤。從查詢結果保存
DECLARE TYPE cur_type IS REF CURSOR;
CURSOR PT_Cursor IS
SELECT * FROM Table1
PT_Cursor_Row PT_Cursor%ROWTYPE;
BEGIN
OPEN PT_Cursor;
LOOP
FETCH PT_Cursor INTO PT_Cursor_Row;
EXIT WHEN PT_Cursor%NOTFOUND;
Select ID From Table2 --this is actually a long complext query
INNER JOIN Table3 ON Table2.ID = Table3.ID
WHERE Table2.ID = PT_Cursor_Row.ID
Select * From Table2 --this is actually a long complext query
LEFT JOIN Table4 ON Table2.ID = Table4.ID
WHERE Table2.ID = PT_Cursor_Row.ID
END LOOP;
CLOSE PT_Cursor;
END;
爲什麼你想要/打算使用遊標? –
因爲我們需要爲表格的每一行執行相同的過程。 – 03Usr
這個過程是發生在數據庫內部還是外部?數據庫中的 –