首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL -过滤条件的增加会增加查询执行时间吗?

MySQL -过滤条件的增加会增加查询执行时间吗?
EN

Stack Overflow用户
提问于 2015-07-13 02:53:37
回答 1查看 495关注 0票数 0

WHERE-clause中提供多个筛选条件是缩短了搜索时间,还是类似于,因为它一次处理多个筛选器,就会增加所需的处理量,从而增加执行时间?

例如。

从table_name选择*,其中this = foo,that = bar

从table_name选择*,其中this = foo

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-13 03:11:31

通常,您所描述的查询所需的时间是基于读取数据的I/O时间和返回结果集的时间。与读取和返回记录的时间相比,判断记录是否在结果集中的时间是可以忽略不计的。

这是一个总体概述。如果对where子句有索引,那么这两个构造基本上是相同的。对于第二个键的比较,可能会有非常、非常小的额外开销,但这对实际应用程序不会有什么影响。

与一般情况不同的是,比较确实需要很长时间。这可能是由于大型文本字段上的like或复杂的用户定义函数造成的。在这种情况下,这种比较可能会产生影响。

不过,更根本的是,查询所做的事情不同。在担心神秘的性能特性之前,您应该表达真正需要的查询。例如,通常在数据库中进行筛选要比将数据带回应用程序并在那里进行筛选要好得多。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31374791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档