WHERE in子句中值的顺序重要吗?(这是在Firebird SQL上,如果这很重要的话)
例如:
where field1 in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10)提供以下性能提升
where field1 in (3, 5, 10, 2, 1, 8, 6, 9, 4, 7)发布于 2013-04-29 09:59:46
是的,它会的,但可能是以依赖于实现的方式。IN被处理为顺序OR,人们可能会认为最可能的处理顺序是写入的。
也就是说,我首先假设优化器将按照给定的顺序处理元素,因为这是最简单的,并将它们在集合中从最大可能性到最小可能性进行排序。这不会有什么坏处,而且很可能会有所帮助。差异是可测量的还是显着的是另一回事;测量它并让我们知道。
https://stackoverflow.com/questions/16270077
复制相似问题