18、数据库查询逻辑与空值处理的深入解析

数据库查询逻辑与空值处理的深入解析

1. 查询答案的完整性与语言限制

在处理查询时,若答案集不完整,可将语言限制在安全子集内。例如,当查询答案子集定义明确时,系统在该子集范围内是完整的。像 Zaniolo 对等价类的操作,对于全元组集合而言是合理且完整的,不过会排除包含相关空值的元组,即便这并非用户本意,但答案定义清晰且直观易懂。

2. 计算性能评估

评估查询方案的一种方法是估算其计算性能。一般来说,Codd 的 @、Zaniolo 的 ni 以及普通变量(包括 Skolem 常量)实现起来较为简单;Biskup 和 Ola 的扩展元组实现更复杂,但不如 C - 表、Lipski 和 Vassiliou 所采用的范式转换困难。在数据库即理论的范式下,计算复杂度与理论复杂度相关。例如,Imielinski 指出在不完整信息和递归规则的情境下,查询处理的复杂度甚至会超出一阶谓词逻辑的不动点扩展能力。

3. 相关性分析

通过限制方法的应用范围可简化方法。若只允许使用范式查询,范式转换就变得简单;若语言仅限制为正选择,就无需考虑元组条件。然而,当存储由大量区间并集组成的区间范围变量时,简单选择会出现问题。为处理更多类型的查询,存储结构的表达能力不断扩展,但这大幅降低了计算性能,C - 表就是作为理论构造引入的。Imielinski 和 Lipski 描述了存储结构的表达能力与查询语言的表达能力及逻辑性能之间的基本相关性。

4. 逻辑选择

固定模型和语言后,连接它们的逻辑选择就变得关键。除了模态解释,还有经典解释和部分解释。具有相同经典、部分和模态解释的公式被称为安全公式。已知的安全查询类可通过一系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值