MySQL使用IN代替OR的缘由

对于许多数据库服务器而言,IN()列表不过是多个OR语句的同义词而已,由于IN和OR在逻辑上是等同的。不只是在MySQL数据库服务器,对于许多其余的数据库服务器使用到IN查询时,都是按照以下方式处理的: [1] 对IN列表中的数值进行排序。 [2] 对于查询的匹配,每次使用二分查找去匹配IN列表的数值。 因此对于第[2]步,每次比较的算法复杂度大概为O(log n)。相反,对于一样逻辑的OR列表,
相关文章
相关标签/搜索