Есть ли в SQLite понятие кеша запросов?Например, если я выполню один и тот же запрос два раза подряд:
select * from Sales1m group by territory_id;
select * from Sales1m group by territory_id;
Результат: 136 строк возвращено за 6663 мс
Результат: 136 строк возвращено за 6745 мс
Это занимает примерно то же самое время, даже если установлено значение PRAGMA cache_size=-1000
(1 МБ).
Получает ли второй запрос выгоду от первого запроса вообще?Если ответ «нет», насколько сложно будет реализовать кэш запросов на стороне клиента?Я предполагаю, что наивная реализация могла бы использовать контрольную сумму строки запроса и набор результатов (потенциально сжатый?), Но тогда она также должна была бы аннулировать всякий раз, когда таблицы обновляются.