Я пытаюсь запросить любые местоположения в пределах указанного расстояния от другого местоположения.Запрос не является проблемой, но расстояние, возвращаемое географией. STDistance равно.
Кажется, STDistance
делает довольно точные вычисления на местах, близких к экватору, но мне это нужно для работы с местоположениями в северной части.страны.Норвегия, Швеция, Финляндия и т. Д. ...
Согласно моим расчетам, проведенным на местах в северной Швеции, расстояние неверно в 2,38 раза ?!Ожидаемый результат - 1070 метров, а возвращаемое расстояние - 2537,28850694302 метра
Мой запрос выглядит так:
DECLARE @g geography = geography::STGeomFromText('POINT(65.580254 22.179428)', 4326)
SELECT name, [pos].STSrid as srdi, [pos].STDistance(@g) as d
FROM [GPSCHAT].[dbo].[USERS]
, а «другое местоположение» имеет координаты (65,578541 22,202286)(сохранено с SRID 4326)
Я предполагаю, что это связано с расстоянием от экватора (близко к полярному кругу), но должен быть способ вычислить это более точно, основываясь на Широтеили я не прав?