145.Oracle数据库SQL开发之 集合——10g对集合的增强(3)
时间:2025-07-10
时间:2025-07-10
5. 为嵌套表的存储表使用不同的表空间 默认情况下,嵌套表的存储表创建在与嵌套表的父表相同的表空间中。 10g 中,可以为嵌套表的存储表指定一个不同的表空间。
CREATE TABLE cust_with_nested_table (
id INTEGER PRIMARY KEY,
first_name VARCHAR2(10),
last_name VARCHAR2(10),
addresses t_nested_table_address
)
NESTED TABLE
addresses
STORE AS
nested_addresses2 TABLESPACE users;
6. 嵌套表对ANSI的支持
美国国家标准协会ANSI规范包括许多可用于嵌套表的操作符。
SUBMULTISET操作符用于检查一个嵌套表的元素是否是另一个嵌套表的子集。 MULTISET操作符用于获得一个嵌套表
CARDINALITY函数返回集合中的元素数目
MEMBER OF操作符用于检查嵌套表的一个元素是否存在
SET函数首先将嵌套表转换为一个集合,然后删除集合中重复的元素,最后将集合作为嵌套表返回。
IS A SET操作符用于检查嵌套表中的元素是否是各不相同的。
IS EMPTY 操作符用于检查嵌套表是否不包含任何元素。
COLLECT函数从一个元素集返回一个嵌套表
POWERMULTISET函数返回给定嵌套表中元素的所有组合。
POWERMULTISET_BY_CARDINALITY函数返回给定嵌套表中元素的某些组合,这些组合都具有特定的元素数量。