MySQL: близлежащие места для нескольких широты и долготы - PullRequest
0 голосов
/ 19 ноября 2018

Я создаю приложение поиска свойств, используя Laravel 5.5 и MYSQL . Там пользователь ищет несколько мест для покупки недвижимости. Результат поиска покажет свойство в текущем местоположении, а также выберет свойство соседнего местоположения для лучшего результата.

Если пользователь ищет одно местоположение, я получу широту и долготу этого местоположения и получу соседнее местоположение в радиусе 5 км, используя запрос MYSQL, и покажу свойство на основе местоположений.

Но моя проблема в том, что когда пользователь ищет от 4 до 5 местоположений, как найти ближайшие местоположения для каждого местоположения в радиусе 5 км и отсортировать результат по расстоянию. Я много искал по этому поводу, но не могу найти какой-либо ресурс

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

Таблица местоположений

  • id INT (10)
  • location_name VARCHAR (255)
  • широта ДЕСЯТИЧНЫЙ (11,8)
  • долгота DECIMAL (11,8)
  • активный TINYINT (1)

Таблица свойств

  • id INT (10)
  • property_name VARCHAR (255)
  • location_id INT (10)
  • активный TINYINT (1)

Пожалуйста, помогите мне в этом вопросе. Заранее спасибо

1 Ответ

0 голосов
/ 19 ноября 2018

Просто повторите ваш запрос 4 - 5 раз и объедините результаты, используя ключевое слово "union" в Mysql

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...