Здравствуйте! Столкнулся с такой проблемой. Есть 2 базы которые расположены на одном сервере. Одна релизная, а вторая для тестов. В релизной БД хранятся данные за 10 дней и там есть N количество данных. В тестовой базе хранятся данные за 5 дней и там есть примерно N/2 количество данных. В тестовой БД абсолютно идентичные данные за последние 5 дней релизной БД.
В чём собственно вопрос. Я хочу выбрать данные за отдельный день (например за сегодня), но когда я делаю запрос к релизной БД, то данные возвращаются мне за 8 секунд, А когда делаю запрос на тестовую БД, то данные возвращаются за 5-6 секунд. Правильно ли это? Я думал что запрос должен отсечь все данные за предыдущие дни в одной и в другой БД и ответ должен приходить за одинаковое время примерно.
Пример запроса:
SELECT
(SELECT concat(p.latitude::TEXT, ' ', p.longitude::TEXT)
FROM positions p
WHERE p.route_list_id = rl.id
ORDER BY p.time DESC
LIMIT 1) as POSITION,
*
FROM route_list_date rld
INNER JOIN route_list rl on rld.id = rl.route_list_date_id
WHERE rld.date = '2020-02-17'