2011-07-09 57 views
1

我希望能夠做到以下幾點:PostGIS的,Postgres的,地理編碼...

選擇一個多邊形和一個點,看看點位於多邊形內...我想我可以做到這一點MySQL,但經過一整天的研究,這根本是不可能的。

我見過我需要使用postgres和postgis,我從來沒有用過postgres。

我設法安裝postgres和postpgadmin,它看起來像我創建了一個數據庫並啓動並運行。現在我顯然需要添加postgis到數據庫才能使用這些函數?他們只是postgres圖書館的一部分?爲什麼有人說我需要向數據庫添加表來使用函數?

如何將postgis添加到我的數據庫?

任何人都可以給我任何簡單明瞭的查詢例子,看看點是否在一個多邊形?

+1

開始通過閱讀說明書http://postgis.refractions.net/docs/ch02.html –

回答

2

對於純幾何查詢,您將不需要postgis。當你想要混淆地理數據時,Postgis是必需的。

,用於檢查點是多邊形內,該查詢應的例子清楚地告訴你:

postgres=# select '((0,0), (1,1), (1,0))'::polygon @> '(.5, .5)'::point; 

這將打印真實的,這意味着三角形由點形成的(0,0 ),(1,1)和(1,0)包含點(.5,.5)。

欲瞭解更多信息檢查:http://www.postgresql.org/docs/9.0/interactive/datatype-geometric.htmlhttp://www.postgresql.org/docs/9.0/interactive/functions-geometry.html

+0

謝謝!它的工作原理,我很困惑的閱讀每個人都說使用postgis。有沒有這樣的MySQL版本?他說希望:) –

+1

對不起,我現在還沒有玩過很長一段時間的MySQL,因此我不知道它們對幾何類型和功能有多大的支持。請注意,儘管postgres支持幾何類型和操作,但postgis可能會促進一些工作。 –

0

PostGIS是PostgreSQL數據庫的空間擴展,與許多通用數據庫一樣,空間函數必須安裝在常規安裝之上。

該PostGIS網站是信息豐富的,有很好的documentation所以你去那裏讀一下你需要知道的關於獲取和安裝PostGIS的一切。

一旦安裝和測試,您需要spatially enable您的數據庫,然後你都設置好了。如果你有一個數據集,當然。