2 回答

TA貢獻(xiàn)1858條經(jīng)驗(yàn) 獲得超8個(gè)贊
mongoDB實(shí)現(xiàn)空間數(shù)據(jù)庫(kù)該有的東西.. 原生就支持地理范圍檢索...無(wú)需各種用不著的東西...4sq就是用它的

TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超3個(gè)贊
其實(shí)算出中心點(diǎn)以距離為半徑的外切正方形內(nèi)的經(jīng)緯度范圍效率比較高 SQL代碼 {{{ declare @EARTH_RADIUS float set @EARTH_RADIUS = 6371000.00 ---地球的半徑 declare @lat float declare @lng float declare @dlng float declare @dlat float declare @distance int ------距離 set @distance = 300 ----300米 set @lat =xx.xxxxx ---這個(gè)是中心地點(diǎn) set @lng = xxx.xxxx ---中心地點(diǎn) set @dlng = 2 * asin(sin( @distance / (2 * @EARTH_RADIUS)) / cos(@lat)) set @dlng = degrees(@dlng) set @dlat = 300/@EARTH_RADIUS set @dlng = degrees(@dlat) declare @lng1 float declare @lng2 float declare @lat1 float declare @lat2 float set @lat1 = @lat-@dlat set @lat2 = @lat+@dlat set @lng1 = @lng-@dlng set @lng2 = @lng+@dlng select @lat1,@lat2,@lng1,@lng2 SELECT lat,lng FROM place WHERE lat > @lat1 AND lat < @lat2 AND lng > @lng1 AND lng < @lng2; }}}
添加回答
舉報(bào)