Я работаю с огромной базой данных и пытаюсь оптимизировать ее.
Мне было интересно, если он внесет какие-либо изменения, чтобы проиндексировать значения, которые используются в качестве критериев в запросе, но через функцию.
Например, у меня есть эта таблица координат GPS:
-Node (#id,lat,lng)
и этот запрос:
SELECT * FROM Node WHERE distance( lat, lng, $lat, $lng ) < $threshold
Будет ли создание индекса для lat и lng какой-либо оптимизацией? (Я работаю с SQLite)
Спасибо
Редактировать Я только что подумал над тем же вопросом, но если я сделаю вычисление напрямую, как:
SELECT * FROM Node WHERE (lat-$lat)*(lat-$lat) + (lng-$lng)*(lng-$lng) < $threshold