如何使用 Node.js 从 MongoDB 获取不同的文档?
MongoDB 是一个跨平台、面向文档的数据库,它基于集合和文档的概念。它以键值对的形式存储数据,是一个 NoSQL 数据库程序。 NoSQL 一词的意思是非关系型的。
MongoDB 模块: Node.js 的这个模块用于连接 MongoDB 数据库以及用于操作 MongoDB 中的集合和数据库。 mongodb.connect()方法用于连接运行在您机器上特定服务器上的 MongoDB 数据库。 (参考这篇文章)。我们还可以在此方法中使用 Promise 来解析对象包含集合操作所需的所有方法和属性,并且在拒绝时,在连接期间发生错误。
mongodb 模块的collection.distinct()方法用于在 MongoDB 中查找特定数据库的不同文档。
句法:
collection.distinct(key,callbackfunction)
参数:此函数采用上面提到的两个参数,如下所述:
- MongoDB 数据库的键的名称,以查找它的不同值
- 使该函数异步的回调函数
安装模块:
npm install mongodb
项目结构:
在本地 IP 上运行服务器:
mongod --dbpath=data --bind_ip 127.0.0.1
MongoDB数据库:
Database:GFG
Collection:GFGcollection
数据库结构:
索引.js
Javascript
const MongoClient = require("mongodb");
const url = 'mongodb://localhost:27017/'
const database = "GFG"; // Database name
MongoClient.connect((url)).then((client) => {
// Database reference
const connect = client.db(database);
// Connect database to connection
const collection = connect.collection("GFGcollection");
// class key
collection.distinct("class").then((ans) => {
// Printing distinct value of class key
console.log(ans);
}).catch((err) => {
console.log(err.Message);
})
})
输出: