2009-02-04 47 views

回答

0

是的,他們工作。

我剛剛從基於ESRI-ArcObject的查詢中使用ISpatialFilter切換一個類到一個返回相同數據的SqlCommand。這是一個鄰近搜索(返回距離x點1000英尺內的任何記錄)。

起初ESRI的查詢速度還是比較快,但這是由於構建的where子句很差(我仍然在學習如何使用SQLSVR2008中的空間函數)。

經過一些調整後,我的SQL方法比ESRI方法快,但不是太多。然後,我將搜索距離擡高到10000英尺,然後我看到了差異。 SQL Server 2008方法要快得多。

(ESRI)搜索附近的顧客經過時間(s):1.503 (SQL2008)查詢附近的客戶經過時間(s):0.925

雖然速度差異沒有與索引的事,但使用ESRI-ArcObjects。在我的ESRI方法中,我從IProximityOperator和IPoint獲取距離,x和y。在SQL2008方法中,我讓數據庫完成所有工作:SHAPE.STX作爲X,SHAPE.STY作爲Y,SHAPE.STDistance(但ArcObject開發人員知道所有這些開銷)。

到目前爲止我留下了深刻的印象。