2011-11-25 67 views
2

我想請求我的數據庫與LAT/LON取回國家代碼。 我在一個mysql數據庫中的世界邊界(從djangoproject.com轉換shapefile)作爲幾何數據字段。 當使用MySql通過幾何/空間數據尋找國家

SELECT countyname FROM `world` WHERE Contains(ogc_geom, POINT(-18, 64)) 

我回來不僅是「冰島」(這是真的),而且格陵蘭,俄羅斯和美國。 我嘗試了其他的觀點(點蒙古國在中國和俄羅斯創建),嘗試使用intersects(),用多邊形檢查...

好主意? 謝謝,斯蒂芬

+0

考慮發佈在gis.stackexchange.com或者,節省自己很多時間,並使用類似http://developer.yahoo.com/geo/placefinder/ – tomfumb

+0

我們沒有辦法回答這個問題,不知道什麼數據存儲在數據庫中。請發佈[最小樣本](http://sscce.org/):完整,簡潔並重現問題。 – outis

回答

0

我不知道你只能用MySQL做這個。如果您可以使用腳本語言來連接MySQL數據,那麼您可以嘗試以下操作。 生成世界地圖的圖像。圖像中的每個像素都將存儲國家ID。你可以使用這個ID從MySQL數據庫中查找國家詳細信息。