Dee*_*rma 2 sql database database-design
我想以这样的方式创建一个总线路由DB,它给出如下结果:
输入: Source = station-X,Destination = station-Y
输出:各种总线名称/号码.通过Station-X和Station-Y
到目前为止我有: 总线(bus_no),Bus_Route()
Bus(bus_name/no.)
id | bus_no
1 | 33
2 | 33A
Bus_Route(route_id,bus_no)
id | route_id | bus_no
1 | route-A | 33
2 | route-B | 33A
Run Code Online (Sandbox Code Playgroud)
如何继续存储相应路线的电台名称.我不是数据库专家,所以任何帮助都是有价值的.提前致谢.
你最好创建一个持有STATION - ROUTE关系的额外表格.你在这里定义了一个多对多的关系,这意味着一个站可以有很多路由,一个路由可以有很多站.
总线(仅当多个物理总线存在且具有相同的*bus_no*时才需要)
id | bus_no
---------------
1 | 33
2 | 33A
3 | 33A
Run Code Online (Sandbox Code Playgroud)
bus_routes(*route_id*和*bus_no*都必须是唯一值)
route_id | bus_no
---------------------
route-A | 33
route-B | 33A
Run Code Online (Sandbox Code Playgroud)
stations_routes(多对多,route_order告诉我们路线内的顺序)
route_id | station_id | route_order
------------------------------------
route-A | Egham | 1
route-A | Haymarket | 2
route-A | Egham Plaza | 3
route-B | Egham | 1
route-B | Langley | 2
Run Code Online (Sandbox Code Playgroud)