如何按值查找与文档属性或数组元素匹配的文档

时间:2015-10-05 12:29:32

标签: arrays mongodb mongodb-query

我有一个包含以下文档的集合:

{ "_id" : "DzQuhq22NhQm5waCm", "title" : "Test", "users" : [ "wCxEmesi2M73dLze4" ], "userId" : "htMZEZTMxsQXq6sRD", "createdAt" : ISODate("2015-10-05T12:09:34.852Z") }

属性users是一个包含userId s。

的数组

现在,如果我的值在users数组中或与userId匹配,我想找到此文档。因此,如果我的值为htMZEZTMxsQXq6sRDwCxEmesi2M73dLze4,则应退回此文档。

我尝试了以下内容: db.test.find({userId: val}, {users: {$in: val});但这不起作用。

提前致谢。

1 个答案:

答案 0 :(得分:1)

试试这个:

db.getCollection('TESTCOLLECTION').find({$or:[{'userId':'htMZEZTMxsQXq6sRD '},{'users':'wCxEmesi2M73dLze4'}]})