Мы используем таблицу MySQL с запросом ниже (с арифметическим вычислением). Запрос выбирает правильные результаты в соответствии с логикой предложения where (довольно быстро с небольшим количеством записей).
select phone_number
from user
where (wdd_lat - 10)*(wdd_lat - 10) + (wdd_lon - 20)*(wdd_lon - 20) <= 25;
phone_number, wdd_lat, wdd_lon
0777453637,34,30
0432432333,245,56
4141411414,45,125
1232341444,56,25
1111111111,78,90
Но мы немного обеспокоены производительностью в последнем запуске.
- Как только таблица значительно вырастет, она быстро даст результаты? (Когда количество записей около 1 миллиона)
- Как мы можем улучшить производительность, если это задержит предоставление результатов?
- Существуют ли другие способы повышения производительности при увеличении таблицы (приветствуются любые предложения вне БД / sql)