Повечето от другите отговори не дават нищо убедително, а само спекулации. И така, въз основа на добрия съвет от отговора на @Namphibian
, пуснах EXPLAIN
за някои заявки, подобни на тези в ОП.
Резултатите са по-долу:
EXPLAIN
за заявка с = 1
:
EXPLAIN
за заявка с IN(1)
:
EXPLAIN
за заявка с IN(1,2,3)
:
Както можете да видите, MySQL оптимизира IN(1)
да бъде същото като = 1
в този вид заявка. отговорът на @mes
изглежда обаче показва, че това може да не винаги е така при по-сложни заявки.
Така че, за тези, които бяха твърде мързеливи да стартират EXPLAIN
себе си, сега знаете. И да, може да искате да стартирате EXPLAIN
на собствена заявка, за да сте сигурни, че се обработва по този начин. :-)