Oracle的table()函數用于將一個嵌套表(nested table)或關聯數組(associative array)轉換為一個關系表(relational table),以便在SQL查詢中使用
CREATE TYPE number_nt AS TABLE OF NUMBER;
然后,可以使用table()函數將嵌套表轉換為關系表:
SELECT * FROM TABLE(number_nt(1, 2, 3, 4));
CREATE TYPE number_aa AS TABLE OF NUMBER INDEX BY VARCHAR2(30);
然后,可以使用table()函數將關聯數組轉換為關系表:
DECLARE
numbers number_aa;
BEGIN
numbers('one') := 1;
numbers('two') := 2;
numbers('three') := 3;
SELECT * FROM TABLE(numbers);
END;
總之,Oracle的table()函數支持嵌套表和關聯數組作為輸入參數,并將它們轉換為關系表以便在SQL查詢中使用。這些數據類型可以是任何基本數據類型,如NUMBER、VARCHAR2、DATE等。