SpringBoot+Vue3+Element Plus 打造分布式存储系统(慕K无密)
下载看水印
逻辑关系算子(Logical Relational Operator)简称逻辑算子(Logical Operator),主要指区别于物理算子的关系算子, 不关注物理属性, 只关注在数据在包表示上的变化.
比如 Join 是个逻辑算子, 其物理算子有HashJoin/SortMergeJoin 等,这些物理算子不会影响在包语义下计算的结果.
物理算子会影响排序属性, 从而序列(Sequence)以及分区序列(Partitioned Sequence)可以用于描述物理属性(排序,分布等)上的规则, 不过这不在这主要的讨论范围内.
2 布尔表达式
标量表达式的优化一般包括常量折叠, 表达式化简, 公共子表达式提取, 输入范围(谓词)提取等.
布尔表达式是一类化简规则明确的标量表达式.
二值逻辑
二值逻辑可以看做由
逻辑算子 ∧,∨,¬
量词 ∃,∀
值 𝑡𝑟𝑢𝑒,𝑓𝑎𝑙𝑠𝑒, 以及一些在比较算子作用下的其他类型值
比较算子,≤,≥,=,≠, 两两为相反符号
替代符号 𝑝,𝜃,𝑡 等
表达两个表达式相等的全等符号 ≡
等等符号组成的经典布尔代数系统.有很多基于真值表推理的已知的等价规则, 这里省略不作完整列举.
比如消去非的规则
¬(¬(𝑝))≡𝑝
¬𝑡1𝜃𝑡2≡𝑡1𝜃¯𝑡2
用比较符号的取反消去非实例, 如
¬𝑡1=𝑡2≡𝑡1≠𝑡2
另外, 量词在 SQL 中直接关注较少, 可以认为在子查询展开部分已经解决, 后续讨论也不包含.
领取专属 10元无门槛券
私享最新 技术干货