在WHERE
- 子句中提供多个过滤条件是否会减少搜索时间或类似,因为它一次处理多个过滤器,它会增加所需的处理量,从而增加执行时间?
E.g。
从table_name中选择*,其中this = foo和that = bar
VS
从table_name中选择*,其中this = foo
答案 0 :(得分:1)
通常,您描述的查询所花费的时间取决于读取数据的I / O时间和返回结果集的时间。与读取和返回记录的时间相比,确定记录是否在结果集中所花费的时间可以忽略不计。
这是一般概述。如果你有where
子句的索引,那么这两个结构基本相同。对于第二个密钥的比较,可能会有非常非常少量的额外开销,但这对现实世界的应用程序没有任何影响。
与一般情况的另一个区别是比较做需要很长时间。这可能是由于大文本字段上的like
或复杂的用户定义函数造成的。在这种情况下,比较可能会产生影响。