我有一个简单的查询来查找与字段jId
匹配的多个文档。现在只有2个文件。使用node-mongodb-native
并使用find
标记调用$in
会将其限制为只有一个:
let collection = db.collection('documents')
// Without $in, both are returned
collection
.find()
.toArray((err, docs) => {
docs.map((doc) => doc.jId)) // Gives ['j-04e347','j-548240']
})
// With $in, only one is returned
collection
.find({ 'jId': { '$in': [ 'j-04e347',' j-548240' ] } })
.toArray((err, docs) => {
docs.map((doc) => doc.jId)) // Gives ['j-04e347']
})
这是一个错误,还是我错误地使用$in
运算符,或node-mongodb-native
包不支持此错误?
如果$in
不可用,是否有另一种方法可以达到同样的效果?
答案 0 :(得分:1)
包含了额外的空格:' j-548240'
而不是'j-548240'
。
唉。但这确实适用于node-mongodb-native
。