簡體   English   中英

如何從 mongoose 查找中排除對象數組?

[英]How to exclude an array of objects from mongoose find?

假設我的收藏包含以下元素:

const Item = mongoose.Schema({
   type: { type: String },
   group: { type: Number }
});

[
   { type: "A", group: 1 },
   { type: "B", group: 1 },
   { type: "C", group: 1 },
   { type: "A", group: 2 },
   { type: "B", group: 2 },
   { type: "C", group: 2 },
]

現在我想執行一個find操作,但想排除以下項目:

const items = [
    { type: "A", group: 1 },
    { type: "B", group: 1 },
];

const result = await Model.find({ /* ??? */ });

查詢必須如何查看才能獲得以下響應?

const result = [
   { type: "C", group: 1 },
   { type: "A", group: 2 },
   { type: "B", group: 2 },
   { type: "C", group: 2 },
];

嘗試$nor運算符,對包含一個或多個查詢表達式的數組執行邏輯 NOR 運算,並選擇數組中所有查詢表達式都失敗的文檔。

const items = [
    { type: "A", group: 1 },
    { type: "B", group: 1 },
];
const result = await Model.find({ $nor: items });

操場

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM