Сравнение двух целых чисел приводит к длительному времени запроса - PullRequest
0 голосов
/ 16 мая 2019

Мой запрос:

SELECT  `suprayts`.`id`, `suprayts`.`username`, `suprayts`.`question`, `suprayts`.`suprayt_photo`,
        `suprayts`.`open_vote`, `suprayts`.`like_count`, `suprayts`.`dislike_count`
FROM (
`suprayts`
)

WHERE suprayts.id NOT IN (1)
AND  `suprayts`.`time` >1557944878
ORDER BY  `suprayts`.`id` ASC 
LIMIT 1 , 1

Этот запрос занимает: 0,0347 мс

Если я удалю следующую строку:

AND  `suprayts`.`time` >1557944878

Требуется 0,0005 мс

Мое поле времени int(11) и проиндексировано.Что может быть причиной этой проблемы?

1 Ответ

0 голосов
/ 16 мая 2019

Ваши запросы довольно быстрые, и вы не говорите, какие индексы у вас уже есть.

В любом случае, если вы хотите сделать это быстрее, вы можете добавить следующий индекс (если у вас его еще нет):

create index ix1 on suprayts (id, time);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...