-1

我在数据库中有 2 个字段 varchar。一个大小为 50,另一个大小为 2。我必须与 2 个字段进行比较。我想知道先比较短字段然后再比较另一个字段是否会更好。还是完全一样?

4

1 回答 1

2

它没有任何区别你基本上无法控制它。当你说:

where col1 = 'A' and col2 = 'ABC'

SQL 引擎可以按照它喜欢的任何顺序自由地进行比较。事实上,它可能会通过在索引中查找值来进行一次比较,然后对列中的结果值进行另一次比较。因此,查询中看起来非常相似的内容可能具有非常非常不同的执行计划。

此外,一般而言,与首先读取数据相比,对行的操作只需少量工作。你的时间被浪费在这样的微优化上。如果您希望您的代码运行得更快,您需要考虑全局。

于 2013-06-24T14:06:12.257 回答