gpt4 book ai didi

mongodb - 在 Mongo 的对象层次结构中的任何位置查询具有值的键

转载 作者:可可西里 更新时间:2023-11-01 10:30:37 60 4
gpt4 key购买 nike

在 Mongo 中,我如何找到所有具有给定键和值的文档,而不管该键出现在文档的键/值层次结构中的什么位置?

例如输入键 roID 和值 5 将匹配两者:

{
roID: '5'
}

{
other: {
roID: '5'
}
}

最佳答案

没有内置的方法可以做到这一点。您可能必须递归扫描每个匹配的文档以尝试找到该属性。 不推荐。您可能需要考虑重组数据或将其处理成更统一的格式,以便查询更容易(更快)。


如果您想要的 key 出现在固定数量的不同位置,您可以使用 $or 运算符来扫描所有可能性。

以您的示例文档为例,您的查询将如下所示:

db.data.find( { "$or": [
{ "roID": 5 },
{ "other.roID": 5 },
{ "foo.bar.roID": 5 },
{ any other possbile locations of roID },
...
] } )

关于mongodb - 在 Mongo 的对象层次结构中的任何位置查询具有值的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25970625/

60 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com