MongoDB findById 返回的是一個文件列表,而不是單個結果?如何只獲取一個文件?
要僅獲取一個結果,請使用 findOne() 並根據 id 獲取。讓我們建立一個包含文件的集合 -
> db.demo340.insertOne({_id:1,"Name":"Chris",Age:21}); { "acknowledged" : true, "insertedId" : 1 } > db.demo340.insertOne({_id:2,"Name":"David",Age:23}); { "acknowledged" : true, "insertedId" : 2 } > db.demo340.insertOne({_id:3,"Name":"Bob",Age:20}); { "acknowledged" : true, "insertedId" : 3 } > db.demo340.insertOne({_id:4,"Name":"Sam",Age:19}); { "acknowledged" : true, "insertedId" : 4 }
使用 find() 方法顯示集合中的所有文件 -
> db.demo340.find();
將生成以下輸出 -
{ "_id" : 1, "Name" : "Chris", "Age" : 21 } { "_id" : 2, "Name" : "David", "Age" : 23 } { "_id" : 3, "Name" : "Bob", "Age" : 20 } { "_id" : 4, "Name" : "Sam", "Age" : 19 }
以下是查詢 ID 的查詢 -
> db.demo340.findOne({_id:1});
將生成以下輸出 -
{ "_id" : 1, "Name" : "Chris", "Age" : 21 }
廣告