查询MongoDB:通过一个查询按名称和位置查找商店

时间:2017-12-09 11:18:45

标签: mongodb

查询MONGODB:按名称和单个查询的位置返回商店

嗨大家好! 我正在使用MEAN Stack构建一个“搜索商店”应用程序。

我将商店文档存储在MongoDB“location”集合中,如下所示:

{
 _id: .....
 name: ...//shop name
 location : //...GEOJson
}

UI为用户提供商店搜索的单一输入。基本上,我会执行一个单一查询以在相同的结果数组中检索:

  • 用户附近的所有商店(最终限于x)

  • 所有商店都称为“喜欢”输入值

在逻辑方面,我认为这是一个“$或类似”的查询

基于这个答案 Using full text search with geospatial index on Mongodb 可能分配两个特殊索引(2dsphere和全文)到集合是不正确的方式来实现这一点,无论如何我认为这是一个不同的情况只是因为我真的不想将顺序过滤器应用于结果,“只是”想要用2个不同的标准来检索数据。

如果我应该在我的集合上设置索引,当然方法是使用两个不同的方法执行两个不同的查询($near表示位置,$text表示名称),然后将结果与一些服务器端逻辑删除重复文档并以一些有用的方式对用户体验进行排序,但我仍然想知道是否存在一个方法来通过一个查询来实现此结果。

所以,问题是:是否有可能或者这种方法不符合MongoDB的目的?

希望这很清楚,希望有人今天可以教一些东西!

由于

0 个答案:

没有答案