Используйте пространственные расширения MySQL для выбора точек внутри круга

У меня есть столflags который содержит столбец с именемcoordinates это полно MySQL «точек». Мне нужно выполнить запрос, где я получу все флаги в круге, основываясь на широте и долготе с радиусом 100 метров.

С точки зрения использования это основано на позиции пользователя. Например, мобильный телефон предоставит пользователю широту и долготу, а затем передаст его этой части API. Затем API должен создать невидимый круг вокруг пользователя с радиусом 100 метров, а затем вернуть флаги, которые находятся в этом круге.

Именно эту часть API я не знаю, как создать, поскольку я не уверен, как использовать SQL для создания этого невидимого круга и выбирать точки только в пределах этого радиуса.

Это возможно? Есть лиMySQL пространственная функция что поможет мне сделать это?

Я верюBuffer() Функция может сделать это, но я не могу найти документацию о том, как его использовать (например, SQL). В идеале мне нужен ответ, который показывает мне, как использовать эту функцию или как можно ближе к ней. Где я храню эти координаты как геопространственные точки, я должен использовать геопространственную функцию, чтобы делать то, что я прошу, чтобы максимизировать эффективность.

Флаги настольные:

Я быкоординатыимя

Пример строки:

1 | [ГЕОМЕТРИЯ - 25B] | Tenacy AB

Для таблицы флагов у меня есть широта, долгота позиции и восток и север (UTM)

Местоположение пользователя просто стандартная широта / долгота, но у меня есть библиотека, которая может преобразовать эту позицию в UTM

Ответы на вопрос(8)

Ваш ответ на вопрос