我試圖查詢距離另一個位置指定距離內的任何位置。查詢不是問題,但是由geography.STDistance返回的距離是。Ms SQL geography.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)
我猜這與離赤道的距離(靠近極地圈)有關,但必須有一種方法可以根據緯度更精確地計算出來,還是我錯了?