我試圖找到到最近的自行車架到犯罪地點的距離。我有一個有500萬個犯罪和5000個自行車架的數據庫表。我現在需要做的是爲500萬件犯罪案件中的每一件尋找最近的自行車架。我嘗試使用geopy創建一個python腳本,但它在處理過程中太耗時(至少需要幾周)。我一直在網上廣泛搜索,我發現SQL Server 2012有一個地理數據類型,所以我創建了一個包含經度和緯度點的犯罪和自行車架的地理數據類型的列。SQL Server 2012地理位置 - 查找多個行的最小值
現在我試圖做這樣的事情:
update Crimes set distanceToNearestBikeRack = crimeGeo.STDistance((select geo from bike_racks))
不幸的是,這會導致子查詢返回許多行,並且拋出:
消息512,級別16,狀態1 ,第1行子查詢返回的值超過1 。當子查詢遵循=,!=,<,< =,>,> = 或子查詢用作表達式時,這是不允許的。該語句已終止。
如何從多個點中找到最近點?
這是完美的!正是我在找什麼。謝謝!我向更新添加了批處理。 –