gpt4 book ai didi

查询键中的 MongoDB 通配符

转载 作者:IT老高 更新时间:2023-10-28 11:05:56 27 4
gpt4 key购买 nike

是否可以在查询中使用通配符?例如,给定以下记录,我想做一个 .find({'a.*': 4})

这里讨论过 https://jira.mongodb.org/browse/SERVER-267但是好像还没有解决。

{
'a': {
'b': [1, 2],
'c': [3, 4]
}
}

最佳答案

正如所问,这是不可能的。您链接到的服务器问题仍在“我们不确定的问题”中

MongoDB 在使用数组方面有一些智能,我认为这是围绕此类功能的复杂性的一部分。

进行以下查询 db.foo.find({ 'a.b' : 4 } )。此查询将匹配以下文档。

{ a: { b: 4 } }
{ a: [ { b: 4 } ] }

那么“通配符”在这里做什么? db.foo.find( { a.* : 4 } ) 是否匹配第一个文档?第二个呢?

此外,这在语义上意味着什么?正如您所描述的,查询实际上是“查找该文档中任何字段的值为 4 的文档”。这有点不寻常。

是否有您想要实现的特定语义?也许文档结构的改变会让你得到你想要的查询。

关于查询键中的 MongoDB 通配符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6179871/

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