【发布时间】:2018-04-02 21:54:45
【问题描述】:
我有一个问题,从昨天开始我一直在尝试解决,其中我编写了一个 API,它接受城市/子城市名称,然后查询数据库以获取城市或子城市匹配的所有文档。
我的问题是:
1)如果有 4 个文档,其中 3 个文档的城市为孟买,1 个文档的城市为 Navi Mumbai,当我查询孟买时,我应该只得到 2 个文档,其中一个文档的城市是孟买,另一个文档的城市是 Navi Mumbai,但我没有像那样工作,而是得到了所有 4 个文件作为回报,我得到了 3 个城市为 Mumbai 的文件和 1 个城市为 Navi Mumbai 的文件。我想知道如何消除重复的结果,只返回没有重复键的文档,每个文档只返回一个文档而不重复键值
目前我的代码如下所示:
exports.get_startup_based_on_locaton = function(req, res) {
SSchema.find({ $or:[{'city': { $regex : new RegExp(req.params.location, "i")}}, {'subcity': { $regex : new RegExp(req.params.location, "i")}}]}, function(err, sschema) {
if (err)
res.send(err);
res.json(sschema);
})
}
【问题讨论】:
标签: node.js regex mongodb mongoose aggregation-framework