0
存在包含空間數據的兩個MSSQL表:
- AddressPoints - 包含地址(點結構)
的地理位置 - 管道 - 包含管道的地理位置(LINESTRING結構)
點和最近的LINESTING之間的距離
地址點表應包含距離最近的管線段的距離。我目前正在嘗試編寫高效的查詢。我結束了以下查詢:
select a.ogr_fid, min(a.geom.STDistance(p.geom))
from AddressPoints a, Pipeline p
group by a.ogr_fid
但是,地址點和管道表包含大量的數據影響執行速度。 這兩個表都包含空間索引,但我不確定這個查詢是否利用它們。
'MIN'表明你正在尋找最近鄰居的距離,而不是所有的距離。 [本MSDN文章](https://msdn.microsoft.com/en-us/library/ff929109.aspx)解釋瞭如何編寫使用空間索引的最近鄰居查詢。要求相當嚴格 –