Алгоритм Mysql для расчета расстояния большого круга - PullRequest
1 голос
/ 08 марта 2012

Я хочу вычислить расстояние между двумя почтовыми индексами перед вставкой данных в базу данных. В основном у меня есть эти таблицы

Таблица почтовых индексов

| zipcode |   lat   |  long  |

  01230     60.1756   23.12

  01240     60.1756   25.25

таблица клиентов

| name | zip code |

  foo    01230

стол продавца

| name |  zip code  |  workingdistanceinkm

  foo     01240        200

  foo1    01230        100

Я хочу рассчитать расстояние между продавцом и клиентом, если оно находится в какой-либо рабочей области продавца, до того, как данные клиента будут вставлены в таблицу клиентов.

Мой подход заключался в расчете расстояния между клиентом и каждым продавцом, который находится в таблице продавца. Но это приводит к большому количеству запросов для , например, , если у меня 1000 продавцов, это означает, что я вычисляю расстояние между новыми данными о клиентах, которые будут вставлены с теми из 1000 продавцов.

Мне интересно, можно ли написать один запрос для выполнения той же задачи.

Ответы [ 2 ]

1 голос
/ 08 марта 2012

Обратите внимание на

www.zipcodeworld.com / samples / distance.php.html

. Обратите внимание, что расчеты расстояния между почтовыми индексами не всегда являются фактическими представлениями расстояния.Это просто расстояние воображаемой прямой линии между двумя точками.Но на самом деле это длиннее

0 голосов
/ 05 сентября 2013

Ниже URL мне очень помог.Пожалуйста, проверьте раздел «Поиск локаций с MySQL».Спасибо.

https://developers.google.com/maps/articles/phpsqlsearch_v3
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...