Table-CAST
和CAST-Multiset
有什么用?
Table-Cast
SELECT count(1)
INTO v_Temp
FROM TABLE(CAST(Pi_Save_Data_List AS Property_data_list))
WHERE Column_Value LIKE '%Contact';
Cast-Multiset
SELECT e.last_name,
CAST(MULTISET(SELECT p.project_name
FROM projects p
WHERE p.employee_id = e.employee_id
ORDER BY p.project_name)
AS project_table_typ)
FROM emps_short e;
对代码的性能提升或影响是什么?
答案 0 :(得分:9)
TABLE()函数将嵌套表类型强制转换为关系结果集。这允许我们在SQL中查询以前填充的集合。
CAST(MULTISET())函数调用将关系结果集转换为集合类型。当插入到定义为嵌套表的列的表中时,这主要是有用的。
很少有网站在其永久数据结构中使用对象关系功能,因此第二种用法非常少见。但是能够在嵌入式SQL语句中使用集合是一种非常酷的技术,并且广泛用于PL / SQL。