嵌套与解除嵌套
考试要求: 了解     
知识路径:  > 数据库主流应用技术  > 数据库主流应用技术  > 数据库主流应用技术  > 面向对象数据库  > 对象关系数据库系统  > 与复杂类型有关的查询


 
       将一个嵌套关系转换成为1NF的过程称为解除嵌套。关系doc有author-list和keyword-list两个属性,这两者都是嵌套关系,同时关系doc另外还有name和date两个属性,它们都不是嵌套关系。假定想要将该关系转化为单个平面关系,使其不包含嵌套关系或者结构类型作为属性,可以使用以下查询来完成这个任务:
       
       from子句中的变量B被声明以doc为取值范围,变量A被声明以该文档的author-list中的作者为取值范围,同时K被声明以该文档的keyword-list的关键词为取值范围。
       反向过程即将一个1NF关系转化为嵌套关系,称为嵌套。嵌套可以用对SQL分组的一个扩展来完成。在SQL分组的常规使用中,需要对每个组创建一个临时的多重集合关系,然后在这个临时关系上应用一个聚集函数。如果不应用聚集函数而只返回这个多重集合,我们就可以创建一个嵌套关系。假定有一个1NF关系flat-doc,下面的查询在属性keyword上对关系进行了嵌套:
       
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有