Coding With Fun
Home Docker Django Node.js Articles Python pip guide FAQ Policy

MongoDB conditional operator


May 17, 2021 MongoDB


Table of contents


MongoDB conditional operator


Describe

Conditional operators are used to compare two expressions and get data from the mongoDB collection.

In this section, we'll discuss how to use conditional operators in MongoDB.

The conditional operators in MongoDB are:

  • (-gt;) greater than - $gt
  • Less than - less than - $lt
  • (-gt;) is greater than or equal to the $gte
  • Less than or equal to - $lte

The database name we use is "w3cschooldb" Our collection name is "col" and the following data is inserted for us.

For testing convenience, we can first empty the data from the collection "col" using the following command:

db.col.remove({})

Insert the following data

>db.col.insert({
    title: 'PHP 教程', 
    description: 'PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。',
    by: 'w3cschool',
    url: 'http://www.w3cschool.cn',
    tags: ['php'],
    likes: 200
})

>db.col.insert({title: 'Java 教程', 
    description: 'Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。',
    by: 'w3cschool',
    url: 'http://www.w3cschool.cn',
    tags: ['java'],
    likes: 150
})

>db.col.insert({title: 'MongoDB 教程', 
    description: 'MongoDB 是一个 Nosql 数据库',
    by: 'w3cschool',
    url: 'http://www.w3cschool.cn',
    tags: ['mongodb'],
    likes: 100
})

Use the find() command to view the data:

> db.col.find()
{ "_id" : ObjectId("56066542ade2f21f36b0313a"), "title" : "PHP 教程", "description" : "PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "php" ], "likes" : 200 }
{ "_id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "java" ], "likes" : 150 }
{ "_id" : ObjectId("5606654fade2f21f36b0313c"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "mongodb" ], "likes" : 100 }

MongoDB is larger than the operator - $gt

If you want to get data in the "col" collection that is greater than 100, you can use the following command:

db.col.find({"likes" : {$gt : 100}})

Similar to SQL statements:

Select * from col where likes > 100;

Output:

> db.col.find({"likes" : {$gt : 100}})
{ "_id" : ObjectId("56066542ade2f21f36b0313a"), "title" : "PHP 教程", "description" : "PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "php" ], "likes" : 200 }
{ "_id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "java" ], "likes" : 150 }
> 

MongoDB is greater than or equal to the operator - $gte

If you want to get data in the "col" collection with "likes" greater than or equal to 100, you can use the following command:

db.col.find({likes : {$gte : 100}})

Similar to SQL statements:

Select * from col where likes >=100;

Output:

> db.col.find({likes : {$gte : 100}})
{ "_id" : ObjectId("56066542ade2f21f36b0313a"), "title" : "PHP 教程", "description" : "PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "php" ], "likes" : 200 }
{ "_id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "java" ], "likes" : 150 }
{ "_id" : ObjectId("5606654fade2f21f36b0313c"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "mongodb" ], "likes" : 100 }
> 

MongoDB (-lt;) is less than the operator - $lt

If you want to get data in the "col" collection that is less than 150, you can use the following command:

db.col.find({likes : {$lt : 150}})

Similar to SQL statements:

Select * from col where likes < 150;

Output:

> db.col.find({likes : {$lt : 150}})
{ "_id" : ObjectId("5606654fade2f21f36b0313c"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "mongodb" ], "likes" : 100 }

MongoDB is less than or equal to the operator - $lte

If you want to get "likes" less than 150 data in the "col" collection, you can use the following command:

db.col.find({likes : {$lte : 150}})

Similar to SQL statements:

Select * from col where likes <= 150;

Output:

> db.col.find({likes : {$lte : 150}})
{ "_id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "java" ], "likes" : 150 }
{ "_id" : ObjectId("5606654fade2f21f36b0313c"), "title" : "MongoDB 教程", "description" : "MongoDB 是一个 Nosql 数据库", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "mongodb" ], "likes" : 100 }

MongoDB uses (-lt;) and (-gt;) queries - $lt and $gt

If you want to get data in the "col" collection that is greater than 100 and less than 200, you can use the following command:

db.col.find({likes : {$lt :200, $gt : 100}})

Similar to SQL statements:

Select * from col where likes>100 AND  likes<200;

Output:

> db.col.find({likes : {$lt :200, $gt : 100}})
{ "_id" : ObjectId("56066549ade2f21f36b0313b"), "title" : "Java 教程", "description" : "Java 是由Sun Microsystems公司于1995年5月推出的高级程序设计语言。", "by" : "w3cschool", "url" : "http://www.w3cschool.cn", "tags" : [ "java" ], "likes" : 150 }
>