8、约束处理与论证语义增强

约束处理与论证语义增强

1. 约束处理

在处理查询的约束时,对于上一步生成的每一个组合,我们会创建一个规则 $R_i$,并检查该规则,看查询 $Q$ 中的约束是否能由 $R_i$ 中使用的视图里的约束推导得出。若可以,则将 $R_i$ 添加到重写结果 $R$ 中。这里的重写结果 $R$ 是包含的合取查询的并集。对于每一个规则 $R_i$,存在以下三种可能情况:
1. 情况一 :查询 $Q$ 中的约束 $C$ 能由 $R_i$ 中使用的视图里的约束推导得出。此时,直接将 $R_i$ 添加到结果 $R$ 中。
2. 情况二 :可以向 $R_i$ 中添加一组约束 $C’$,使得 $C’$ 和 $R_i$ 视图中的约束能推导出 $C$。这种情况下,将 $C’$ 附加到 $R_i$ 后,再把 $R_i$ 添加到 $R$ 中。
3. 情况三 :若上述两种情况都不满足,则丢弃规则 $R_i$。

最后,我们将所有 $R_i$ 的并集 $R$ 作为查询 $Q$ 的最小约束重写(MCR)返回。

下面通过一个简单的表格来总结这三种情况:
| 情况 | 条件 | 操作 |
| ---- | ---- | ---- |
| 情况一 | 查询 $Q$ 中的约束 $C$ 能由 $R_i$ 中视图约束推导得出 | 直接将 $R_i$ 添加到结果 $R$ 中 |
| 情况二 | 可添加约束 $C’$ 到 $R_i$,使 $C’$ 和 $R_i$ 视图约束能推导出 $C$ | 将 $C’$ 附加到 $R_i$ 后添加到 $R$ 中 |

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值