find一个Mongodb文件,如果它包含数组中的一个元素在mongoose

如果我在有一个数组的MongoDB文档中有一个字段,例如:

"tags" : [ "tag", "etc1", "etc2", "etc3" ] 

如果包含元素“etc1”,我可以select该文档吗?
如果我尝试使用查询:

 db.coll.find({"tags" : { $elemMatch: { value0: 'etc1'} }}) 

但是我需要知道数组中元素的位置,这是我不知道的。
我也试过了:

 db.coll.find({"tags" : { $elemMatch: 'etc1' }}) 

但它需要成为一个对象。 有没有办法做到这一点?

NB我正在使用mongoose,但我不知道如何构build查询

       

网上收集的解决方案 "find一个Mongodb文件,如果它包含数组中的一个元素在mongoose"

使用$in操作符,如本问题或其他问题所述,并在mongodb文档中描述,并可以通过mongoose访问 。

有了它,你将有一个查询,看起来像这样… 记住,你必须通过一个数组时,使用$中 :

db.coll.find({"tags" : { $in : ['etc1'] } } );

除了使用$ in操作符,您还可以使用$ all操作符,如:

 db.col1.find({"tags":{$all :["etc1"]}})