旅行距离表设计

时间:2012-04-04 12:19:49

标签: mysql database database-design

我必须开发一个包含目的地之间距离的表,并需要一些帮助。我现在几乎是空白如何开始

enter image description here

此处的表格分别显示距离A to A, B, C AND D ARE 0, 4, 8, AND 12的距离,等等。

需要将MySQL表中的这些数据转换为由管理面板管理,并在客户端站点上使用,具体取决于来自目的地。

此致

3 个答案:

答案 0 :(得分:4)

如果您没有“真实”日期(如地理位置),则需要将数据存储在2个表格中。

第一张桌子,位置(所以存储A,B,C,D,以及有关位置的其他相关信息)

第二张表,3列。 from_location,to_location,distance。 (在/ to_location上有一个键,所以它是唯一的。但是在插入之前总是检查相反的方式,因为你可以在表中支持A,C和C,A)

这样您就可以轻松地从数据库中提取正确的数据。

例如,获取从A到C的距离(SELECT distance FROM distance_table WHERE from_location = "A" AND to_location = "C"

答案 1 :(得分:0)

所以基本上你需要一个有3列的表。 A点,B点,距离

在你的程序中,你可以做2 for循环来完成2维表作为插入。

如果您希望它是唯一的,那么在您的代码中,如果您当前正在查看B到A,则需要尝试,在再次插入之前检查A到B是否已经存在。可能明智的做法是在PointA和PointB必须唯一的表格上设置一些约束

答案 2 :(得分:0)

制作表格

Create table `table_name`( `Distance_from` varchar(2), `A` int,`B` int, `C` int, `D` int ,primary key(Distance_from));

然后插入您的记录,如

Insert into `table_name`(`Distance_from`,`A`,`B`,`C`,`D`) values('A',0,4,8,12)

同样插入所有行。