事实上,IN的使用规则很容易理解,因为它协调的过滤机制几乎与OR一样,即分别满足。下面我们将前面需求2和需求3中的OR替换成IN:
大家可以看到,IN可以将多个相同属性的过滤要求合并在一起,所以IN语句的书写更加简单。
我们再来看最后一个操作符——NOT。想必同学们都还记得,NOT与“<>”和“!=”一样,使用它将通过否定进行反选,也就是匹配与过滤要求相矛盾的行。
如果我们要反选例句(7)的返回结果,那么对应的语句就是这样的:
好了,现在我们要给大家留一道课后思考题。前面讲到,IN协调的过滤机制与OR一样,而且需求2和需求3中的例句证明了这一点。不过例句(9)中的IN却无法被OR替换,就像这样:
为什么此处的IN无法被替换成OR?替换成OR以后,它对应的需求发生了什么样的变化?这是什么原因造成的?如果我们执意要将IN替换掉,是否可以考虑使用AND?
好了,以上就是本节的主要内容。为了让大家对4个逻辑操作符有更加深刻的理解,我们准备了一篇专栏采访。