sql语法巧用之not取反( 三 )

是了,没问题,语法支持,结果正确 。换成其他的sql类数据库做同样的测试,仍然一致 。基本可以确定,not语法是可以覆盖结果取反的场景的 。
4. not语法的底层原理虽然not语法看起来没啥问题,但是在官方的介绍里,貌似并没有找到相应的章节描述,为什么呢?不得而知 。
那么sql的not在底层是怎么实现的呢?两个思路吧:一是像咱们前面提到的进行反面条件转换,得到后再进行执行;二是直接计算的时候,先正向计算出结果,然后遇到not之后,当作一个运算符,直接将结果取反,从而决定结果是抛弃还是保留 。
因为数据库底层都是是根据规则依次计算结果判定,所以最合适的方式是正向计算结果,然后遇到not进行true/false反转,这是其正常的执行引擎流程 。但具体是否如此,暂不得而知,待以后有机会再研究研究 。
通过本文的介绍,在以后的工作中,咱们也可以多了一个选择了,虽然少见,但不排除遇见 。希望能为大家多一点参考 。
【sql语法巧用之not取反】

经验总结扩展阅读