Mongoose 是 MongoDB 的對象數據建模 (ODM) 庫。它定義了一個強類型模式,默認值和模式驗證稍後映射到 MongoDB 文檔。
此方法用於對兩個或多個表達式的數組執行邏輯或運算,並僅選擇或檢索與數組中至少一個給定表達式匹配的文檔。
用法:
Modal.find().where([path]).or([exp1, exp2, ....])
參數:
- path:它是一個表示字段名稱的字符串,這是一個must-have參數。
- 指數1,指數2……:這些是我們正在實地尋找的表達。
Mongoose 模塊的安裝:
第 1 步:您可以訪問安裝 mongoose 模塊的鏈接。您可以使用此命令安裝此軟件包。
npm install mongoose
步驟2:安裝mongoose模塊後,您可以使用命令在命令提示符中檢查您的mongoose版本。
npm version mongoose
步驟3:之後,您可以創建一個文件夾並添加一個文件,例如index.js,要運行該文件,您需要運行以下命令。
node index.js
項目結構: 項目結構將如下所示:
示例 1:我們有一些客戶數據,其中包含他們的姓名、興趣和訂單計數。在此示例中,我們想要查找訂單數為 5 或 7 的客戶。
Javascript
// Require mongoose module
const mongoose = require('mongoose');
// Set Up the Database connection
mongoose.connect(
'mongodb://localhost:27017/geeksforgeeks', {
useNewUrlParser: true,
useUnifiedTopology: true
})
// Defining customerSchema schema
const customerSchema = new mongoose.Schema({
name: String,
interest: Array,
orderCount: Number
})
// Defining customerSchema model
const Customer = mongoose.model(
'Customer', customerSchema);
Customer.find().where("orderCount")
.or([{orderCount: 5}, {orderCount: 7}])
.then((res) => {
console.log(res)
});
運行應用程序的步驟:
步驟1:下麵是函數執行之前數據庫中的示例數據,您可以使用任何GUI工具或終端來查看數據庫,就像我們使用MongoDB指南針GUI工具一樣,如下所示:
運行應用程序的步驟:使用以下命令運行index.js 文件:
node index.js
示例2:在前麵的示例中,我們找到了 orderCount,它是一個數字,但在這個示例中,我們將找到interest,它是一個數組。我們正在尋找有興趣的客戶拳擊或者柔道。
Javascript
// Require mongoose module
const mongoose = require('mongoose');
// Set Up the Database connection
mongoose.connect(
'mongodb://localhost:27017/geeksforgeeks', {
useNewUrlParser: true,
useUnifiedTopology: true
})
// Defining customerSchema schema
const customerSchema = new mongoose.Schema({
name: String,
interest: Array,
orderCount: Number
})
// Defining customerSchema model
const Customer = mongoose.model(
'Customer', customerSchema);
Customer.find().where("orderCount")
.or([{interest: "judo"}, {interest: "boxing"}])
.then((res) => {
console.log(res)
});
運行應用程序的步驟:使用以下命令運行index.js 文件:
node index.js
參考: https://mongoosejs.com/docs/api/query.html#query_Query-or
相關用法
- Mongoose Query.prototype.orFail()用法及代碼示例
- Mongoose Query.prototype.all()用法及代碼示例
- Mongoose Query.prototype.and()用法及代碼示例
- Mongoose Query.prototype.batchSize()用法及代碼示例
- Mongoose Query.prototype.box()用法及代碼示例
- Mongoose Query.prototype.catch()用法及代碼示例
- Mongoose Query.prototype.centerSphere()用法及代碼示例
- Mongoose Query.prototype.circle()用法及代碼示例
- Mongoose Query.prototype.collation()用法及代碼示例
- Mongoose Query.prototype.cursor()用法及代碼示例
- Mongoose Query.prototype.distinct()用法及代碼示例
- Mongoose Query.prototype.exec()用法及代碼示例
- Mongoose Query.prototype.explain()用法及代碼示例
- Mongoose Query.prototype.geometry()用法及代碼示例
- Mongoose Query.prototype.getOptions()用法及代碼示例
- Mongoose Query.prototype.getPopulatedPaths()用法及代碼示例
- Mongoose Query.prototype.getUpdate()用法及代碼示例
- Mongoose Query.prototype.gt()用法及代碼示例
- Mongoose Query.prototype.gte()用法及代碼示例
- Mongoose Query.prototype.hint()用法及代碼示例
- Mongoose Query.prototype.lean()用法及代碼示例
- Mongoose Query.prototype.limit()用法及代碼示例
- Mongoose Query.prototype.lt()用法及代碼示例
- Mongoose Query.prototype.lte()用法及代碼示例
- Mongoose Query.prototype.map()用法及代碼示例
注:本文由純淨天空篩選整理自devi_johns大神的英文原創作品 Mongoose Query.prototype.or() API。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。