Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

Node.js MongoDB 删除


删除文档

要删除记录,或者在 MongoDB 中称为文档,我们使用 deleteOne() 方法。

deleteOne() 方法的第一个参数是一个查询对象,用于定义要删除的文档。

注意: 如果查询找到多个文档,则只删除第一个出现的文档。

示例

删除地址为 "Mountain 21" 的文档

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://127.0.0.1:27017/";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("mydb");
  var myquery = { address: 'Mountain 21' };
  dbo.collection("customers").deleteOne(myquery, function(err, obj) {
    if (err) throw err;
    console.log("1 个文档已删除");
    db.close();
  });
});
运行示例 »

将上面的代码保存在名为 "demo_delete.js" 的文件中,并运行该文件

运行 "demo_delete.js"

C:\Users\Your Name>node demo_delete.js

这将给你以下结果

1 个文档已删除


删除多个

要删除多个文档,请使用 deleteMany() 方法。

deleteMany() 方法的第一个参数是一个查询对象,用于定义要删除的文档。

示例

删除地址以字母 "O" 开头的所有文档

var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://127.0.0.1:27017/";

MongoClient.connect(url, function(err, db) {
  if (err) throw err;
  var dbo = db.db("mydb");
  var myquery = { address: /^O/ };
  dbo.collection("customers").deleteMany(myquery, function(err, obj) {
    if (err) throw err;
    console.log(obj.result.n + " 个文档已删除");
    db.close();
  });
});
运行示例 »

将上面的代码保存在名为 "demo_delete_many.js" 的文件中,并运行该文件

运行 "demo_delete_many.js"

C:\Users\Your Name>node demo_delete_many.js

这将给你以下结果

2 个文档已删除

结果对象

deleteMany() 方法返回一个包含有关执行如何影响数据库的信息的对象。

大多数信息并不重要,但对象内部的一个对象称为 "result",它告诉我们执行是否成功,以及影响了多少文档。

result 对象看起来像这样

{ n: 2, ok: 1 }

您可以使用此对象返回已删除文档的数量

示例

返回已删除文档的数量

console.log(obj.result.n);

这将产生以下结果

2

×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
[email protected]

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
[email protected]

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Copyright 1999-2024 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.