簡體   English   中英

如何獲取文檔 object MongoDB 中的所有元素

[英]How to get all elements in document object MongoDB

我的收藏中有用戶的對象。 每個文檔都是存儲用戶名和類別的單獨用戶。 類別是包含類別和成本的 object。 我需要在一個用戶中獲取所有類別。 我怎樣才能做到這一點? find({ name: "Bob"}) 查找給定文檔中的所有字段。 我需要將帶有類別的 object 和 output 的內容類別:{...} 帶到控制台。 我怎樣才能做到這一點?

 let users = [ { name: "Bob", сategories: { eat: "20$", entertainment: "100$", }, }, ]; mongoClient.connect(function(err, client) { if (err) return console.log(err); const db = client.db("expensesdb"); db.collection("users").find({ name: "Bob" }.toArray(function(err, results) { console.log(result); client.close(); }); });

您可以在找到 function 中指定投影:

mongoClient.connect(function(err, client) {
  if (err) return console.log(err);

  const db = client.db("expensesdb");
  db.collection("users").find({
    name: "Bob"
  },{projection: {name: 0, _id: 0}}).toArray(function(err, results) { 
    console.log(results);
    client.close();
  });
});

首先,您將數據作為results返回,並嘗試console.log(result) ,這是不同的變量名。

如果您只想為數據庫中的每個用戶和console.log()獲取сategories ,您可以這樣做:

db.collection("users").find(
  { name: "Bob" },
  { сategories: 1 }
).toArray(function(err, results) {
  console.log(results.map(user => user.сategories));
  client.close();
});

注意: results將是一個用戶數組,因為指定查詢可以返回多個文檔。 map()用於遍歷results數組中的每個項目,並將 map 用於其categories屬性。

暫無
暫無

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

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