javascript - $in 用于多个值

标签 javascript mongodb

var footballerIdToPassive = "qqqqq";
var footballerlevelToPassive = ["3052002","3052003"];

db.goals.find({ "footballer": footballerIdToPassive, "footballerlevel": { $in: [footballerlevelToPassive]}}))

因为它除了在目标 db shell 中什么也没有带来,当我对此进行计数时,计数为 1

{ "footballer": "qqqqq", "footballerlevel": "3052002" }

也为

var footballerlevelToPassive = "3052002";

这个,有效。但我不能做多个。我该如何完成这项工作?

我需要使用每一个,我需要更新每一个

最佳答案

footballerlevelToPassive 已经是一个数组,查询时不需要再用另一个数组包裹,直接用$in as

引用即可
var footballerIdToPassive = "qqqqq";
var footballerlevelToPassive = ["3052002","3052003"];

db.goals.find({ 
    "footballer": footballerIdToPassive, 
    "footballerlevel": { "$in": footballerlevelToPassive }
})

相当于查询

db.goals.find({ 
    "footballer": footballerIdToPassive, 
    "$or": [
        { "footballerlevel": "3052002" },
        { "footballerlevel": "3052003" }
    ]
})

快速演示

enter image description here

关于javascript - $in 用于多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43225932/

相关文章:

javascript - 如何使用 JavaScript 或 JQuery 在页面加载时更改 Div 元素的样式宽度?

javascript - 如何限制用户最多打开 5 个 Bootstrap Tab-Panes?

javascript - bootstrap datepicker无法设置minDate

database - Mongoose 只更新不为空的字段?

mongodb - 使用 `$expr` 中的路径检查字段的存在

javascript - onchange joomla JHTML

javascript - AngularJs 停止特定 Controller 的 $interval

MongoDB 按字段聚合存在

mongodb - Mongodb 设计,嵌入与关系

MongoDB:WriteResult.getN() 总是返回 0?