1
我有一張名爲'Region'的表,它有2000條記錄。在區域表中,我有一個稱爲點的幾何列。現在我有另一個名爲Bus_Route的表,其中包含1000萬條記錄的稱爲'幾何'的幾何列。現在我想要說明那個地區的觀點。我正在使用以下查詢來查看我的觀點在該地區的天氣情況,還是不使用STcontains。但是這個查詢需要很長時間(大約3天)。我在我的Bus_Route表上創建了空間索引,它有1000萬條記錄,但這並沒有幫助。即使使用空間索引,STcontains()查詢的運行速度也很慢
Select
Region.BlockID,
Bus_Route.geometry
from
Bus_Route,
Region
where
Region.points.STContains(Bus_Route.geometry) = 1
請幫忙!
嗨本, 感謝您的答覆。 我已經將我的幾何體轉換爲地理現在的問題是我有4000個緯度/長點使得一個區域,並且我想檢查該區域(4000點)中是否存在1點緯度/長度。 我該如何使用STContains地理? DECLARE @g geography; DECLARE @h geography; SET @g = 4000點緯度/長度存儲在數據庫中 SET @h = –
當你說你有4000個點作爲一個區域時,這些點是否定義了區域邊界的線段的端點?我不是在這裏釣點,但這本身就是一個有趣的問題(即你應該爲此提出一個單獨的問題)。我的第一個猜測是,你將不得不從點獲得該地區的文本表示,然後使用靜態地理方法將其解析回地理實例。儘管如此,這對我來說似乎是迂迴的;我會做一些挖掘。 –
感謝您的回覆。我會更詳細地解釋。我有地理形式的區域(構成區域的緯度/長度的輪廓)的經緯度。現在我有1點經/分,我想確定這個點是否在我的區域內。我將如何做到這一點?因此,這裏4000點使一個區域的輪廓,1點是檢查該區域是否存在。我將如何檢查?謝謝你的答案Ben! –