Mongoose Document Model.exists()函数

Mongoose Document Model.exists()函数

Mongoose API的 Model.exists() 方法用于在数据库中查找文档。如果数据库中存在至少一个与给定的过滤条件匹配的文档,此方法将返回一个带有“_id”的文档。

语法:

Model.exists()

参数: Model.exists()方法接受四个参数:

  • filter: 它是一个对象,用于指定从集合中选择文档的条件。
  • options: 它是一个具有各种属性的对象。
  • callback: 这是一个回调函数,一旦执行完成,就会运行。

返回值: Model.exists()函数返回一个promise。结果包含一个与过滤条件匹配的文档的“_id”对象。如果没有匹配,它将返回null。

设置Node.js应用程序:

步骤1: 使用以下命令创建一个Node.js应用程序:

npm init

步骤2: 创建NodeJS应用之后,使用以下命令安装所需模块:

npm install mongoose

项目结构: 项目的结构将如下所示:

Mongoose Document Model.exists()函数

数据库结构: 数据库结构将如下所示,以下文档已存在于集合中。

Mongoose Document Model.exists()函数

示例1: 在这个示例中,我们使用mongoose建立了一个数据库连接,并在userSchema上定义了一个模型,拥有两个列或字段“name”和“age”。最后,我们在User模型上使用exists()方法来获取“age”字段值为“20”的文档的“_id”。

  • app.js: 将以下代码写入app.js文件中:
// Require mongoose module 
const mongoose = require('mongoose'); 
  
// Set Up the Database connection 
mongoose.connect( 
    'mongodb://localhost:27017/geeksforgeeks', { 
    useNewUrlParser: true, 
    useUnifiedTopology: true
}) 
  
const userSchema = new mongoose.Schema( 
    { name: String, age: Number} 
) 
  
// Defining userSchema model 
const User = mongoose.model('User', userSchema); 
User.exists({age: 20}).then(result => { 
    console.log(result) 
})

运行程序的步骤: 从项目的根目录执行以下命令来运行应用程序:

node app.js

输出:

{ _id: new ObjectId("6316eef52d1b8030ebe17040") }

示例2: 在这个示例中,我们为“年龄”字段提供的值在数据库中不存在对应的文档。因此,在输出中,我们将得到一个“null”值。

  • app.js: 将下面的代码写入app.js文件中:
// Require mongoose module 
const mongoose = require('mongoose'); 
  
// Set Up the Database connection 
mongoose.connect( 
    'mongodb://localhost:27017/geeksforgeeks', { 
    useNewUrlParser: true, 
    useUnifiedTopology: true
}) 
  
const userSchema = new mongoose.Schema( 
    { name: String, age: Number} 
) 
  
// Defining userSchema model 
const User = mongoose.model('User', userSchema); 
User.exists({age: 50}).then(result => { 
    console.log(result) 
})

运行程序的步骤: 要运行此应用程序,请在项目的根目录下执行以下命令:

node app.js

输出:

null

参考资料: https://mongoosejs.com/docs/api/model.html#model_Model-exists

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程