2013-02-06 38 views
0

背景/Mysql的集團的「關閉「」浮動(經/緯)

目前現在我們有100個左右的緯度/ LNG至極被映射到谷歌地圖。目的是通過從數據庫中選擇相距幾米內的La/Lo值來顯示這些位置的熱點位置。

然後將使用組值來查找中心點並在熱點地圖上繪製一個圓。

當前設置/

目前,我們正在從請求datase剛剛ID(INT),香格里拉(浮動),羅(浮動)

概念/

我''think''is this

Select * from table 
Group by ( 
      (La + 0.30 && La - 0.30) && (Lo + 0.30 && Lo - 0.30) 
     ) 
+0

那是什麼語法?它看起來像C#和SQL之間的交叉,即亂碼。 –

+0

這只是僞概念代碼。 –

回答

0

首先,地球不是方形的所以爲了獲得準確的距離,您需要使用半加速器功能(查看它),但是,對於幾米的距離,準確度可能無關緊要。

其次,地面之間的距離變化在110.574和111.694公里之間,經度在111.32和0.0公里之間(在極點是0.0km)。在任何情況下,0.3都在0到35,000米之間 - 除非你的熱點位於北極和/或南極,否則不完全是「少數」。第三,忽略錯誤的地理位置,你正在摸索的SQL語句將需要對計算距離進行交叉連接和排序,即使對於小數據集也會非常緩慢 - 你需要看看使用MySQL提供的任何支持適用於本地地理類型。我知道SQL Server有他們,我懷疑MySQL也有。

編輯

它,看到this問題。