如何解决MongoDB聚合查询,查找失败
是否可以找到导致集合不返回任何内容的特定查询?
例如:
aggregation = [
{'$geoNear': SON([('near',self.center),('distanceField',"distance"),('maxDistance',self.radius),('spherical',True)])},{'$match': {'$expr': {'$gt': [{'$size': {'$setIntersection': [types,"$types"]}},0]}}},{'$match': {'_id': {'$nin': destinationsSeen}}},{'$match': {'types': {'$nin': typesSeen}}}
是否可以找到即使其他“匹配”查询都不能找到“ geoNear”查询的内容呢?
我浏览了文档,但是似乎找不到任何东西。
解决方法
使用迭代测试。
也就是说,仅在第一阶段运行聚合以查看返回的结果。如果不为空,则仅在前两个阶段再次运行它。
重复直到结果集为空,最后添加的阶段是导致没有匹配项的阶段。
然后您可以检查上一个测试的输出,以查看为什么没有匹配项。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。