1
任何人都可以幫助我,如何將選擇查詢的結果賦值給數組變量,因爲結果可以是一個值數組。如何在plsql中指定數組變量
任何人都可以幫助我,如何將選擇查詢的結果賦值給數組變量,因爲結果可以是一個值數組。如何在plsql中指定數組變量
有幾種不同的方法可以將數據導入數組。第一是一個簡單的循環,如下所示:
DECLARE
TYPE NUMBER_ARRAY IS VARRAY(100) OF NUMBER;
arrNums NUMBER_ARRAY;
i NUMBER := 1;
BEGIN
arrNums := NUMBER_ARRAY();
FOR aRow IN (SELECT NUMBER_FIELD
FROM A_TABLE
WHERE ROWNUM <= 100)
LOOP
arrNums.EXTEND;
arrNums(i) := aRow.SEQUENCE_NO;
i := i + 1;
END LOOP;
end;
另外,通過@Rene的建議,將使用大量收集,如下:
DECLARE
TYPE NUMBER_ARRAY IS VARRAY(100) OF NUMBER;
arrNums NUMBER_ARRAY;
BEGIN
arrNums := NUMBER_ARRAY();
arrNums.EXTEND(100);
SELECT NUMBER_FIELD
BULK COLLECT INTO arrNums
FROM A_TABLE
WHERE ROWNUM <= 100;
end;
分享和享受。
您正在尋找的術語是:「Oracle批量收集」。搜索互聯網,你會發現很多例子。 – Rene