我在数据库中有2个字段varchar。一个尺寸为50,另一个尺寸为2。 我必须与2个字段进行比较。我想知道首先通过短场比较然后通过其他场比较性能是否更高。或者完全相同?
答案 0 :(得分:2)
和没有任何区别,你基本上无法控制它。当你说:
where col1 = 'A' and col2 = 'ABC'
SQL引擎可以按照自己喜欢的顺序自由地进行比较。事实上,它可以通过查找索引中的值和列中结果值的另一个比较来进行一次比较。因此,在查询中看起来非常相似的内容可能会有非常不同的执行计划。
此外,通常,与首先读取数据相比,对行的操作需要花费很少的精力。你的时间浪费在这种微观优化上。如果您希望代码运行得更快,则需要考虑整体情况。