Use extensões espaciais do MySQL para selecionar pontos dentro do círculo

Eu tenho uma mesa chamadaflags que contém uma coluna chamadacoordinates que está cheio de 'pontos' do MySQL. Preciso executar uma consulta em que obtenho todas as sinalizações dentro de um círculo com base em uma posição de latitude e longitude com raio de 100m.

Do ponto de vista do uso, isso se baseia em torno da posição do usuário. Por exemplo, o celular indicaria a posição de latitude e longitude do usuário e passaria para essa parte da API. Cabe à API criar um círculo invisível ao redor do usuário com um raio de 100 metros e retornar as bandeiras que estão nesse círculo.

É essa parte da API que não tenho certeza de como criar, pois não tenho certeza de como usar o SQL para criar esse círculo invisível e selecionar pontos apenas dentro desse raio.

Isso é possível? Tem algumaFunção espacial MySQL isso vai me ajudar a fazer isso?

Eu acredito noBuffer() A função pode fazer isso, mas não consigo encontrar nenhuma documentação sobre como usá-lo (por exemplo, SQL). Idealmente, preciso de uma resposta que me mostre como usar essa função ou a mais próxima dela. Onde estou armazenando essas coordenadas como pontos geoespaciais, devo usar uma função geoespacial para fazer o que estou pedindo para maximizar a eficiência.

Tabela de sinalizadores:

Eu iriacoordenadasnome

Linha de exemplo:

1 | [GEOMETRIA - 25B] | Tenacy AB

Para a tabela de sinalizadores, tenho latitude, longitude e leste e norte (UTM)

A localização do usuário é apenas latitude / longitude padrão, mas eu tenho uma biblioteca que pode converter essa posição em UTM

questionAnswers(8)

yourAnswerToTheQuestion