Ваше объяснение выглядит так:
[id] => 1
[select_type] => SIMPLE
[table] => secondary_images
[type] => ref
[possible_keys] => primaryId
[key] => primaryId
[key_len] => 5
[ref] => const
[rows] => 1
[Extra] => Using where; Using filesort
Давайте пройдемся по нему.
[id] => 1
Означает, что мы говорим о первой таблице.Вы вызываете только одну таблицу в своем утверждении.
[select_type] => SIMPLE
Мы делаем простой SELECT.
[table] => secondary_images
Имя таблицы, о которой идет речь.
[type] => ref
Тип выбора, наиболее важный для объединений.
[possible_keys] => primaryId
Это важное поле : оно показывает, какие ключи могут быть использованы для ускорения выполнения запроса.В этом случае будет полезен только ваш первичный ключ.
[key] => primaryId
Это важное поле : оно показывает, какие ключи были окончательно использованы.В этом случае первичный ключ.
[key_len] => 5
[ref] => const
[rows] => 1
Угадайте количество строк, проверенных запросом.
[Extra] => Using where; Using filesort
Самое важное поле imho.- Использование где: вы используете инструкцию where.Вполне нормально- Использование сортировки файлов: результат вашего запроса настолько велик, что его невозможно отсортировать в памяти.MySQL должен записать его в файл, отсортировать файл и затем вывести.Это означает доступ к диску и замедлит все.Часто помогает добавление индекса, который может помочь в сортировке, но решение «использования сортировки файлов» - это отдельная глава.