Поиск маркеров в базе данных SQL Server из начальной точки карт Google с радиусом - PullRequest
0 голосов
/ 14 декабря 2011

Я новичок в геоданных и играю с картами Google, asp.net и SQL Server, но я немного застрял.

Я получил таблицу SQL Server с маркерами с долготойи широта.

И я хочу получить 10 ближайших маркеров из базы данных относительно начальной точки.

Каков наилучший способ сделать это.

Сервер SQL 2005 и значения хранятся в двух столбцах. Тип данных nvarchar (300)

1 Ответ

0 голосов
/ 14 декабря 2011

По этой причине вам не нужно использовать C # или ASP.NET, просто используйте запрос SQL.Вот пример из AdventureDataworks образца базы данных для поиска соседних мест:

USE AdventureWorks2008R2
GO
DECLARE @g geography = 'POINT(-121.626 47.8315)';
SELECT TOP(7) SpatialLocation.ToString(), City FROM Person.Address
WHERE SpatialLocation.STDistance(@g) IS NOT NULL
ORDER BY SpatialLocation.STDistance(@g);
...