Имеет ли значение порядок элементов в SQL: WHERE IN ()?

имеет ли значение порядок значений в предложении 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)

1 ответов


Да, это будет, но, возможно, в зависимости от реализации. IN обрабатывается как последовательный или, и можно предположить, что наиболее вероятный порядок обработки записан.

тем не менее, я бы начал с предположения, что оптимизатор будет обрабатывать элементы в указанном порядке, потому что это проще всего, и ранжировать их в наборе от наиболее до наименее вероятного. Это не повредит и, скорее всего, поможет. Является ли разница измеримой или значительной-это другое измерьте его и дайте нам знать.