Mongoose find() Query : operators gt , lt ,gte, lte, in , all, nin # Challenge Your Skills
swapnanilWebDeveloper
Posted on February 8, 2024
1) Query in mongoose is very useful and you can perform multiple quires by find() method.
2) Here you can use many operators like -> $gt, $lt, $gte, $lte.
3) For arrays in mongoose you can use some operators like => $all, $in, $nin
Let's go through this code to understand the multiple combinations that you can make by find() method.
To know more about mongoose and enhance your knowledge you can go to my github account
click here to get the github aaccount
const mongoose = require('mongoose');
main().catch(err => console.log(err));
async function main() {
await mongoose.connect('mongodb://127.0.0.1:27017/StudentData');
const studentSchema = new mongoose.Schema({
name: {
first : String,
last : String,
},
email : String,
address : {
state : String,
district : String,
city : String,
},
science : {
physics : Number,
chemistry : Number,
mathematics : Number,
},
hobbies : [String],
});
const Student = mongoose.model('Student', studentSchema);
await Student.insertMany([
{
name : {
first : "Mayuk",
last : "Mukherjee",
},
email : "Mayuk@gmail.com",
address : {
state : "California",
district : "Atlanta",
city : "Georgia",
},
science : {
physics : 99,
chemistry : 88,
mathematics : 97,
},
hobbies : ["sports", "singing", "dancing", "painting"],
},
{
name : {
first : "Suryendu",
last : "Sarkar",
},
email : "Suryendu@gmail.com",
address : {
state : "Texas",
district : "Atlanta",
city : "Denver",
},
science : {
physics : 74,
chemistry : 82,
mathematics : 86,
},
hobbies : ["reading", "singing", "blogging", "sculpting"],
},
{
name : {
first : "Aninda",
last : "Mukherjee",
},
email : "Aninda@gmail.com",
address : {
state : "Massachuttes",
district : "Atlanta",
city : "Georgia",
},
science : {
physics : 82,
chemistry : 94,
mathematics : 75,
},
hobbies : ["painting", "travelling", "sports", "judo"],
},
{
name : {
first : "Sanlap",
last : "Gadai",
},
email : "Sanlap@gmail.com",
address : {
state : "Alabama",
district : "Oklohama",
city : "Atlanta",
},
science : {
physics : 85,
chemistry : 66,
mathematics : 79,
},
hobbies : ["coocking", "drawing", "sports", "gymming"],
},
]);
const allStudent = await Student.find({});
// console.log(allStudent);
// name.first = "Mayuk", name.last = "Mukherjee"
const result1 = await Student.find({ 'name.first' : 'Mayuk', 'name.last' : "Mukherjee", 'science.physics' : { $gte: 98 },
'science.chemistry' : { $lte : 90, $gte : 85} }, 'name address.state address.district address.city hobbies');
console.log(result1);
const result2 = await Student.find({ 'address.state' : /Texas/i, 'address.district' : /Atlanta/i, 'science.mathematics' : {$gt : 80, $lte : 90} },
'name.first name.last science.physics science.chemistry science.mathematics hobbies' );
console.log(result2);
const result3 = await Student.find({ 'science.physics' : { $gte: 80, $lte : 85 }, 'science.chemistry' : { $gte : 90, $lte : 95},
'name.last' : "Mukherjee" }, 'name.first name.last address science.physics science.chemistry science.mathematics');
console.log(result3);
//likes: { $in: ['vaporizing', 'talking'] }
const result4 = await Student.find({ 'name.first': /Sanlap/i, 'address.city' : /Atlanta/i , 'science.mathematics' : {$gt : 75, $lte : 85} },
'name address.state address.district address.city science hobbies');
console.log(result4);
const result5 = await Student.find({ hobbies : { $in : ['painting','sculpting'] }}, 'name.first name.last address science.chemistry hobbies');
console.log(result5);
const result6 = await Student.find({ hobbies : { $all : ["painting", "travelling", "sports", "judo"] }}, 'name address.state address.district address.city science hobbies');
console.log(result6);
const result7 = await Student.find({ hobbies : { $nin : ["gymming", "judo", "sculpting"] }}, 'name.first name.last address science.physics science.chemistry science.mathematics hobbies');
console.log(result7);
}
Check this output here
PS C:\Users\USER\Downloads\mongoExpress\Queries_find> node src/find_1.js
[
{
name: { first: 'Mayuk', last: 'Mukherjee' },
address: { state: 'California', district: 'Atlanta', city: 'Georgia' },
_id: new ObjectId('65c513f52ab43c3d210b1659'),
hobbies: [ 'sports', 'singing', 'dancing', 'painting' ]
}
]
[
{
name: { first: 'Suryendu', last: 'Sarkar' },
science: { physics: 74, chemistry: 82, mathematics: 86 },
_id: new ObjectId('65c513f52ab43c3d210b165a'),
hobbies: [ 'reading', 'singing', 'blogging', 'sculpting' ]
}
]
[
{
name: { first: 'Aninda', last: 'Mukherjee' },
address: { state: 'Massachuttes', district: 'Atlanta', city: 'Georgia' },
science: { physics: 82, chemistry: 94, mathematics: 75 },
_id: new ObjectId('65c513f52ab43c3d210b165b')
}
]
[
{
name: { first: 'Sanlap', last: 'Gadai' },
address: { state: 'Alabama', district: 'Oklohama', city: 'Atlanta' },
science: { physics: 85, chemistry: 66, mathematics: 79 },
_id: new ObjectId('65c513f52ab43c3d210b165c'),
hobbies: [ 'coocking', 'drawing', 'sports', 'gymming' ]
}
]
[
{
name: { first: 'Mayuk', last: 'Mukherjee' },
address: { state: 'California', district: 'Atlanta', city: 'Georgia' },
science: { chemistry: 88 },
_id: new ObjectId('65c513f52ab43c3d210b1659'),
hobbies: [ 'sports', 'singing', 'dancing', 'painting' ]
},
{
name: { first: 'Suryendu', last: 'Sarkar' },
address: { state: 'Texas', district: 'Atlanta', city: 'Denver' },
science: { chemistry: 82 },
_id: new ObjectId('65c513f52ab43c3d210b165a'),
hobbies: [ 'reading', 'singing', 'blogging', 'sculpting' ]
},
{
name: { first: 'Aninda', last: 'Mukherjee' },
address: { state: 'Massachuttes', district: 'Atlanta', city: 'Georgia' },
science: { chemistry: 94 },
_id: new ObjectId('65c513f52ab43c3d210b165b'),
hobbies: [ 'painting', 'travelling', 'sports', 'judo' ]
}
]
[
{
name: { first: 'Aninda', last: 'Mukherjee' },
address: { state: 'Massachuttes', district: 'Atlanta', city: 'Georgia' },
science: { physics: 82, chemistry: 94, mathematics: 75 },
_id: new ObjectId('65c513f52ab43c3d210b165b'),
hobbies: [ 'painting', 'travelling', 'sports', 'judo' ]
}
]
[
{
name: { first: 'Mayuk', last: 'Mukherjee' },
address: { state: 'California', district: 'Atlanta', city: 'Georgia' },
science: { physics: 99, chemistry: 88, mathematics: 97 },
_id: new ObjectId('65c513f52ab43c3d210b1659'),
hobbies: [ 'sports', 'singing', 'dancing', 'painting' ]
}
]
💖 💪 🙅 🚩
swapnanilWebDeveloper
Posted on February 8, 2024
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.
Related
javascript Mongoose Nested Data SchemaModel # Challange1 your skills # Difficulty Medium
February 8, 2024
javascript Mongoose find() Query : operators gt , lt ,gte, lte, in , all, nin # Challenge Your Skills
February 8, 2024
javascript Mongoose Alias Schema with instance method# Diffuclty Exterme # Challange yourself
February 8, 2024