use*_*439 1 arrays mongoose mongodb node.js
如果我在mongodb文档中有一个具有数组的字段,例如:
"tags" : [ "tag", "etc1", "etc2", "etc3" ]
Run Code Online (Sandbox Code Playgroud)
如果该文档包含元素“ etc1”,是否可以选择该文档?
如果我尝试使用查询:
db.coll.find({"tags" : { $elemMatch: { value0: 'etc1'} }})
Run Code Online (Sandbox Code Playgroud)
但是我需要知道元素在数组中的位置,我不知道。
我也尝试过:
db.coll.find({"tags" : { $elemMatch: 'etc1' }})
Run Code Online (Sandbox Code Playgroud)
但它必须是一个对象。有什么办法吗?
注意:我正在使用猫鼬,但不确定如何构造查询
使用此问题或其他问题中所述的$in运算符,如mongodb docs中所述,可以在mongoose中进行访问。
有了它,您将获得一个看起来像这样的查询... 请记住,在使用$ in时必须传递一个数组:
db.coll.find({"tags" : { $in : ['etc1'] } } );
| 归档时间: |
|
| 查看次数: |
7925 次 |
| 最近记录: |