Mongo查询嵌入式文档中的动态字段

瓦西姆

我有以下结构:

{
   "FiledA" : "FiledAValue",
   "FiledB" : "FiledBValue",
   "FiledC" : {
          "X" : "XValue",
          "Y" : "YValue",
          "Z" : "ZValue"
   },
}
  • FiledC的内容可能是动态的(x,y,z以外的其他字段
  • 用户将发送一个查询,例如{"FiledA" : "12" , "FiledC" : "333"}:FiledA的查询应与12匹配,如果有一个FiledC的fild中包含333,则该查询与之匹配。

如何解决查询中的FiledC问题

提前致谢 ...

拉胡尔

您不应使用动态字段进行查询。如果不单独检查所有字段,就无法查询这些字段。此答案中已举例说明了类似的方法

如果您愿意更改架构,建议将其更改为:

{
   FieldC:[
      {name:"X", value:"value1"},
      {name:"Y", value:"value2"},
      {name:"Z", value:"value3"}
   ]
}

您现在可以使用进行查询:

db.collection.find({"FieldC.value":"testValue"});

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章