【发布时间】:2020-01-10 11:20:16
【问题描述】:
我正在尝试实现一个公交路线列表应用程序。我的目标是列出通过两个用户给定点(位置)的巴士。
我在后端使用 mongodb。数据的简单结构如下:
....
{ name: 'Bus-N', route: ["Loc1", "Loc2", "Loc3", "Loc4", "Loc5" ], startTime:'..'},
{ name: 'Bus-M', route: ["Loc2", "Loc3", "Loc4"], startTime:'..'}
....
假设:我有所有公共汽车的列表,我有每辆公共汽车的所有旅行路线。
用户提供他的start location 和他的destination 作为输入。
- 如何使用这些输入(起始位置和目的地)在此数据库中查询以列出经过这两个点的所有公共汽车?
例如:如果输入是
(Loc3, Loc4),我需要输出为(Bus-N, Bus-M)。 - 如果有更好的方法来实现(显然应该有),请推荐所需的更改。
我是mongodb 的新手。请帮助解决这个问题,在此先感谢。
【问题讨论】:
-
$all是您正在寻找的内容:link。也测试过了。。它的工作原理。db.collection.find({ route: { $all: ["Loc3", "Loc4"] } }).
标签: node.js mongodb mongoose mongodb-query