2012-11-18 141 views
1

在mysql中存儲距離矩陣的最佳方式是什麼?如何在MySQL中存儲距離矩陣?

目前我有兩個表:

tPlaces

PlaceIDPlaceNameLocation


tDistances

PlaceID_1PlaceID_2Distance

這是去它的最好方式,我聽到的RTREEBTREE但還沒有找到如何實現這樣的soltuion的綜合指南。

+0

在你的問題中的建議比兩個答案(sofar)更好不要忘記關鍵:對於tPlaces,所有三個字段都是候選鍵,對於tDistances tPlaces_ [12]都是FK to tPlaces。位置索引是很困難的:某些平臺爲它提供了特殊的2D「GIS」表格類型,對於簡單的數據庫,您可以在* {x,y}和{y,x} – wildplasser

回答

0

我不認爲除了純字符串以外的任何東西都是可行的。這樣你就可以在PHP中編寫一個簡單的方法(或任何你可能使用的)來處理數據。我會將它存儲在

ID | matrix 
------------------------------------------------------------------- 
1 | "PlaceID, PlaceName, Location, PlaceID_1, PlaceID_2, Distance" 
2 | "PlaceID, PlaceName, Location, PlaceID_1, PlaceID_2, Distance" 
3 | "PlaceID, PlaceName, Location, PlaceID_1, PlaceID_2, Distance" 

您可以使用str.explode()來處理數據。

0

如果您使用JSON.stringify(),則可以將整個結果以字符串的形式存儲,這正是您如何接收它的。