如何建模实体之间的关系来覆盖点到点之间的距离

时间:2016-01-30 08:05:54

标签: database-design architecture software-design

我正在构建系统,我将拥有类似地图的内容。您可以创建Route,每个Route有2个或更多Point。每个Point按特定顺序1,2,3,4,... n

现在我想设定点之间的距离。例如,我想设置Point 1和2之间的距离是2米,2到3之间的距离是4米。我想知道我应该如何建模呢?我认为我需要关联表,我将保持两点之间的关系和它们之间的距离。这是解决这个问题的正确方法吗?

2 个答案:

答案 0 :(得分:3)

我认为最好的方法是使用关联表(如你所提到的)。 粗略地说,你将拥有这样的数据库:table Routes(Route_ID,Point_ID,Order),table Distances(From,To,Distance)。 Where和To外键到Point_ID。

Roughed out some quick diagram

答案 1 :(得分:1)

实际上,您不需要额外的表格,而这些点位于路径上,您只需创建字段<template id="checkout_custom" inherit_id="website_sale.checkout"> <xpath expr="//input[@name='city']" position="after"> <input type="remarks" name="remarks" class="form-control"/> </xpath> </template> (或distanceToNext)并将值存储在此处。

这样,只需总结值,就可以计算路径上任意两点的距离。

SQL伪代码:

distanceFromPrev