数据库距离城市表
我需要一个数据库模型,它可以处理具有 2 个值的独占 PK。
假设我们有 3 个城市,它们都是相连的。
距离为:
(1)->(2) = (2)->(1) = 5
(1)->(3) = (3)->(1) = 3
(2)->(3) = (3)->(2) = 4
复杂的一点是我不想要重复的条目!
提前谢谢
I need a DB model, that can handle an exclusive PK with 2 values.
Lets say we have 3 cities and they are all connected.
The distances are:
(1)->(2) = (2)->(1) = 5
(1)->(3) = (3)->(1) = 3
(2)->(3) = (3)->(2) = 4
The complex point is that i dont want duplicate entries!
Thx in advance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您需要三列。 SourceID、DestID 和距离。将较小的 ID 号存储在 SourceID 中,并在 (SourceID, DestID) 上创建唯一约束;
You need three columns. SourceID, DestID and Distance. Store in SourceID the smaller ID number and create a unique constraint on (SourceID, DestID);
强制执行命令以防止重复。无论您存储城市名称还是城市 ID 号,同样的策略都适用。
Enforce the order to prevent duplicates. The same tactic works whether you're storing city names or city id numbers.
您可以使用纬度和经度来计算距离。请参阅此处
You can use latitude and longitude for calculate distances. See here