如何在 MongoDB 中排除数组类型字段值?
若要排除数组类型字段值,请在 MongoDB 中使用 delete()。我们通过文档创建一个集合 -
> db.demo464.insertOne(
... {
...
... "id" : "101",
... "details": [
... {
... Name:"Chris"
... },
... {
... Name:"David"
... }
... ]
... }
... );
{
"acknowledged" : true,
"insertedId" : ObjectId("5e7f8832cb66ccba22cc9dda")
}在集合中使用 find() 方法显示所有文档 -
> db.demo464.find();
这会产生以下输出 -
{ "_id" : ObjectId("5e7f8832cb66ccba22cc9dda"), "id" : "101", "details" : [ { "Name" : "Chris" }, {
"Name" : "David" } ] }以下是排除数组类型字段值的查询 -
> db.demo464.find({id: "101"}).forEach(function(mongoDocument) {
...
... var details = mongoDocument.details;
... for(var j = 0; j − details.length; ++j) {
... var array = details[j];
... delete (array["Name"]);
...
... }
... db.demo464.save(mongoDocument);
... });在集合中使用 find() 方法显示所有文档 -
> db.demo464.find();
这会产生以下输出 -
{ "_id" : ObjectId("5e7f8832cb66ccba22cc9dda"), "id" : "101", "details" : [ { }, { } ] }
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 程序设计
C++
C#
MongoDB
MySQL
Javascript
PHP