География SQL Server 2008. STBuffer () единицы измерения расстояния - PullRequest
7 голосов
/ 04 июня 2010

Я работаю с географической точкой, используя широту / долготу, и мне нужно найти другие точки в нашей базе данных в радиусе 5 миль от этой точки. Тем не менее, я не могу выяснить, что такое «единицы измерения» для STBuffer, похоже, он не соответствует футам, милям, метрам, километрам и т. Д. В документации они упоминаются только как «единицы измерения», любые предложения ? Спасибо

[...] из географии :: STGeomFromText ('POINT (xy)', 4326) .STBuffer (z) .STIntersects (география :: STGeomFromText ('POINT (' + CAST (v.Longitude as varchar (max) )) + '' + CAST (v.Latitude as varchar (max)) + ')', 4326)) = 1

Ответы [ 2 ]

9 голосов
/ 17 января 2011

Единица измерения зависит от используемой системы пространственной привязки. Смотрите этот системный вид для деталей:

SELECT * FROM sys.spatial_reference_systems;

5 голосов
/ 04 июня 2010

STBuffer в метрах. Подробнее здесь.

Чтобы преобразовать мили в метры, разделите количество миль на 0,0006213712

(т. Е. 5 миль / 0,0006213712 = 8,046,72 метра)

...