我目前正在创建一个表格来存储出租车预订。






  ID-预订ID
  
  CustId-被提取的客户的ID
  
  DriverId-接客的驾驶员ID
  
  PickupAddr-取件位置
  
  PickupLat-拾取位置的纬度坐标
  
  PickupLon-拾取位置的lon坐标
  
  DropoffAdr-下车地点
  
  DropoffLat-下车地点的纬度坐标
  
  DropoffLon-下车地点的lon坐标
  
  里程-PickupAddr和DropoffAddr之间的距离,包括任何
  其他停止
  
  停靠点-旅途中的航点/停靠点数
  
  价格-此行程中该客户必须为此支付的费用


我目前面临的问题是我不知道如何处理航路点。

例如如果您已经在A接车去B,但决定在接送一些朋友的过程中停在A1和A2(当然,所有这些都是预先预订的)

重组当前表以适应这种情况的最佳方法是什么?

它应该作为单独的行或列出现吗?由于此数据是动态的(即,您无法预期客户在旅途中进行接送的次数),因此我应该实现的目标是。

最佳答案

由于这是一对多关系,因此应该是一个单独的表:


id-航点ID
booking_id-FK到booking
sequence-在行程中订购此路标
addr-航点地址
lat-航点的纬度
long-航点的经度


如果需要,可以从PickupXXX表中删除DropoffXXXbookings列,并为此简单使用路标表。接站可能是第一个航路点,而下车将是最后一个路点。

10-04 11:52