mysql:in和or的区别

Posted live4m

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql:in和or的区别相关的知识,希望对你有一定的参考价值。


问题:

mysql中,in和or可以互相替换实现,那么两者的效率是否有区别呢?

答案:

通过查找资料得:
在许多数据库语言中,in和or的实现是一致的,没有效率区别.

但在mysql中,会先对列表排序,使得之后可以用二分判断in是否成立,
二分单次判断是O(log)的,因此效率更高.


ps:
附官方文档:
https://dev.mysql.com/doc/refman/8.0/en/comparison-operators.html#function_in

以上是关于mysql:in和or的区别的主要内容,如果未能解决你的问题,请参考以下文章

面试官:说说MySQL中IN和OR的查询效率和区别

面试官:说说MySQL中IN和OR的查询效率和区别

mysql where条件使用了or会不会扫全表

解决go: go.mod file not found in current directory or any parent directory; see ‘go help modules‘(代码片段

SQL中in or和exist 区别(转)

mysql中or和in的效率问题