Как получить поле географии для заполнения значением радиуса - PullRequest
0 голосов
/ 07 ноября 2019

У меня есть поле базы данных SQL, которое принимает географическое значение, и я пытаюсь заполнить это значение радиусом географической точки. Я надеюсь, что смогу выполнить это обновление таблицы через SSMS, чтобы был полезен сценарий SQL. Например, у меня есть следующие данные

Longitude: -87.6648
Latitude: 41.6747

Мне удалось вычислить геопункт из следующего оператора sql и сохранить его в моем поле геокода в моей таблице местоположений

Update Locations 
    set geocode = geography::STGeomFromText ('POINT(' + @long + ' ' + @lat + ')', 4326)
where ID = @LocationID
geopoint = 0xE6100000010C3C4ED1915CD644405F984C158CEA55C0

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

ожидая значение, которое выглядит следующим образом ........

enter image description here

1 Ответ

0 голосов
/ 08 ноября 2019

Попробуйте STBuffer (). Вот так:

declare @metersPerMile = 40234;
select geocode.STBuffer(25*@metersPerMile)
From locations;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...