當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


MongoDB $in用法及代碼示例

MongoDB 提供了不同類型的比較查詢運算符,$in 運算符就是其中之一。此運算符用於選擇字段值等於數組中任何給定值的文檔。如果該字段包含一個數組,則此運算符僅選擇那些字段包含一個數組的文檔,該數組包含至少一個與指定數組的值匹配的項目。您可以根據需要在 find()、update() 等方法中使用此運算符。

用法:

{field:{$in:[value1, value2, value3, ...]}}

在以下示例中,我們正在使用:

Database: GeeksforGeeks
Collection: contributor
Document: three documents that contain the details of the contributors in the form of field-value pairs.



使用匹配值$in操作員:

在此示例中,我們僅檢索名稱為 Amit 或 Suman 的員工文檔。


db.contributor.find({name:{$in:["Amit", "Suman"]}}).pretty()

使用匹配數組中的值$in操作員:

在此示例中,我們僅檢索使用 C#、Python 或這兩種語言的員工的文檔。


db.contributor.find({language:{$in:["C#", "Python"]}}).pretty()

使用匹配嵌入/嵌套文檔中的值$in操作員:

在此示例中,我們僅檢索那些在學期中獲得給定分數的員工文檔。


db.contributor.find({"personal.semesterMarks":{$in:[80, 89, 78]}}).pretty()

使用更新數據$in操作員:

在這個例子中,我們通過使用帶有 $in 和 $set 運算符的 update() 方法在 Amit 和 Suman 的文檔中添加一個新的 field-value 對(即,salary:10000)。


db.contributor.update({name:{$in:["Amit", "Suman"]}}, {$set:{salary:10000}})

注意:這個update()方法默認一次隻更新一個文檔。如果要更新多個文檔,則將其 multi 參數的值設置為 true。因此,在此示例中,update() 方法更新了與給定條件匹配的第一個文檔,如下圖所示。




相關用法


注:本文由純淨天空篩選整理自ankita_saini大神的英文原創作品 MongoDB $in Operator。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。