id != 0
子句中的主键不等于零where
会降低查询性能吗?这种检查是否会阻止利用index
ing的优势?
答案 0 :(得分:0)
如果不等于零,它将与id!= 0的所有真实条件匹配 在查询前使用解释关键字( sql select关键字)检查查询性能。 如果要匹配多个具有id值的记录 使用 IN关键字。
答案 1 :(得分:-1)
在where子句减少查询中主键是否不等于零id!= 0 性能?
这样做会导致您进行全表扫描。
此检查是否阻止利用索引编制的优势?
是的。由于id != 0
几乎总是评估为true,因此您最终将检索所有表数据。
您返回的结果越少,Oracle更有可能利用您的索引。您的情况正在返回所有数据,因此没有利用索引。
如果您想知道是否可以通过条件!= 0
来提高查询性能,那么答案是不可能的。已经足够好了。有时您必须接受全表扫描,但不能总是利用索引。