需求:返回火车ID列表,给定参数的到达时间-日期(“日期”),源(“ S”),目的地(“ D”) 注意事项: 1.火车可以运行超过1天,并且可能在第2/3天到达“ S”
查询: 1.如何存储火车将要覆盖的车站清单(不应在表格中使用清单,否则实时搜索会很慢)
我的方法-
以下实体-
1.火车-ID,名称,来源,目的
2. TrainDetail-TrainId,stationId,到达时间
3. Station-StationId,stationName
4.路径-PathId,SourceStationId,DestionationStationId
5. TrainPaths-TrainId,PathId
我的想法是从“ Station”表中获取给定“ S”和“ D”的stationId,然后在“ Path”表中查找是否存在相同的pathId。 从“ TrainPath”表返回上述pathId的所有trainId 然后在searchDate上过滤trainId
但这是不可行的,因为我们可以拥有数百万个pathId。
请提出一个更好的方法。