但是1,这2个信息信息字段不确定所以我想这么查询:db.search_correct_synonym.find ({“synonym_titles . *”:“联邦调查局"})但是失败了,这种查询是告诉mongo,我想找到无论哪一个领域,只要包含价值=https://www.yisu.com/zixun/联邦调查局的字段
最后的办法,想要找到指定的片名,可以把这些片名复制出来放到一个独立的领域里,比如all_titles:[“联邦调查局”,“帅哥在一九二五”),可以对该字段建索引。这样就能根据db.search_correct_synonym.find ({“all_titles”:“联邦调查局"})找到了
<人力资源/>详见http://stackoverflow.com/questions/6179871/mongodb-wildcard-in-the-key-of-a-query
问,这是不可能的。服务器的问题您联系仍在“问题我们不确定”。
MongoDB周围有一些情报数组的使用,我认为这是复杂性围绕这样一个特性的一部分。
<代码> db.foo采取以下查询。找到({”。b: 4})> 代码。这个查询将下列文件相匹配。
<代码>{答:{b: 4}}{答:[{b: 4}]} 代码>
“通配符”做什么? <代码> db.foo。找到({。*:4})> 代码匹配第一个文档吗?第二个呢?
此外,语义上这是什么意思?如你所描述,查询有效的“查找文件在任何领域,文档的值为4”。这有点不同寻常。
有特定的语义,你想实现吗?文档结构的改变可能会让你查询你想要的。
谢谢,澄清。更具体地说,我想做的是通配符的特定节点的分支,即任何适当的领域。我不清楚> 6月1日的11 5:48
我认为这里的混乱是围绕“领域”。当我写<代码>{答:{b: 4, c: 2}}> 代码,我说值<代码> 代码>是一个JSON对象。JSON对象有两个键<代码> b 代码>和<代码> c> 代码。这些键是4的价值,分别为2。当你要求<代码>。*> 代码,你实际上要求语法,遍历所有的键的JSON对象。你不要求“遍历一个数组”,你要求“遍历一个对象的属性”。这有点不寻常,这就是为什么我要求一个特定的用例。-盖茨VP
@gates:我有一个用例。myDocInMongo={someUnknownKey: {propToCheck:真},“someKnownKey”:真正的};现在,我想要找到这个文档使用选择器{someKnownKey:{$存在:真正}}但是我也要确保没有其他的键与房地产propToCheck对象。所以,如下:{*。propToCheck”:{$存在:假},{someKnownKey:{$存在:真正}}}- doubletap