mysql 的 where 条件过滤需要考虑顺序吗

发布于 2022-09-12 02:15:21 字数 109 浏览 22 评论 0

假如 mysql where 后面条件字段都是没有索引的,但有的字段区分度大,有的字段区分度小,在一个比较大的数据量的表中,这种查询语句需要考虑 where 后面条件顺序吗,先不要说索引,假设是无索引环境

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

木格 2022-09-19 02:15:21

本来想说一下联合索引的情况,既然楼主假设无索引那就不谈了。
所以,数据库引擎在执行SQL语句时,都是要经过查询优化器的,优化器会优化查询计划选择最优查询,所以你后面where如何组合查询器都会再优化的。

拥抱影子 2022-09-19 02:15:21

没有表连接和索引的话,条件顺序对性能无影响。

指尖上的星空 2022-09-19 02:15:21

首先理解where条件是怎么过滤。
就是MySQL调用存储引擎接口,每访问一行表数据,就判断where条件是否满足。
所以,跟where条件顺序是没有关系,无论什么顺序,都只是判断是否满足所有where条件。

有无索引都一样,where条件顺序无关

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文