MongoDB $gt 操作符(大于)
MongoDB中的$gte
操作符是什么
MongoDB提供了各种比较查询操作符。$gte
(大于等于)操作符是其中之一。$gte
操作符用于选择字段值大于或等于(即>=)给定值的文档。您可以根据需要在update、find和like方法中使用此操作符。
$gte
操作符的语法
{ field : { $gte : value } }
示例
在以下示例中,我们正在使用:
Database: JavaTpoint
Collection: employee
Document: Six documents that contain the details of the employees.
>db.employee.find()
{
"_id" : 1,
"name" : "John",
"father_name" : "Thomas",
"department" : "Contain Writting",
"experience" : 2,
"mobile_no" : 9856321478,
"gender" : "Male",
"salary" : 22000,
"age" : 26
}
{
"_id" : 2,
"name" : "William",
"father_name" : "Rebort",
"department" : "Softwre Tester",
"experience" : 1,
"mobile_no" : 7896541478,
"gender" : "Male",
"salary" : 20000,
"age" : 21
}
{
"_id" : 3,
"name" : "Ava",
"father_name" : "William",
"department" : "Marketing manager",
"experience" : 5,
"mobile_no" : 8789654178,
"gender" : "Female",
"salary" : 36500,
"age" : 25
}
{
"_id" : 4,
"name" : "Olivia",
"father_name" : "Noah",
"department" : null,
"experience" : 4,
"mobile_no" : 9045641478,
"gender" : "Female",
"salary" : 30000,
"age" : 27
}
{
"_id" : 5,
"name" : "Elijah",
"father_name" : "John",
"department" : "HR",
"experience" : 0,
"mobile_no" : 6589741230,
"gender" : "Male",
"salary" : 15000,
"age" : 20
}
{
"_id" : 6,
"name" : "John",
"father_name" : "Liam",
"department" : "Softwre Tester",
"experience" : 10,
"mobile_no" : 9014536987,
"gender" : "Male",
"salary" : 55000,
"age" : 30
}
示例1:使用$gte运算符
在这个示例中,我们正在寻找薪资范围等于或大于20000的文档
>db.employee.find({ salary : { $gte : 20000 }}).pretty()
输出:
{
"_id" : 1,
"name" : "John",
"father_name" : "Thomas",
"department" : "Contain Writting",
"experience" : 2,
"mobile_no" : 9856321478,
"gender" : "Male",
"salary" : 22000,
"age" : 26
}
{
"_id" : 2,
"name" : "William",
"father_name" : "Rebort",
"department" : "Softwre Tester",
"experience" : 1,
"mobile_no" : 7896541478,
"gender" : "Male",
"salary" : 20000,
"age" : 21
}
{
"_id" : 3,
"name" : "Ava",
"father_name" : "William",
"department" : "Marketing manager",
"experience" : 5,
"mobile_no" : 8789654178,
"gender" : "Female",
"salary" : 36500,
"age" : 25
}
{
"_id" : 4,
"name" : "Olivia",
"father_name" : "Noah",
"department" : null,
"experience" : 4,
"mobile_no" : 9045641478,
"gender" : "Female",
"salary" : 30000,
"age" : 27
}
{
"_id" : 6,
"name" : "John",
"father_name" : "Liam",
"department" : "Softwre Tester",
"experience" : 10,
"mobile_no" : 9014536987,
"gender" : "Male",
"salary" : 55000,
"age" : 30
}
示例2:另一个字段
在这个示例中,我们要查找年龄大于或等于26岁的文档。
>db.employee.find({ age : { $gte : 26 }}).pretty()
输出:
{
"_id" : 1,
"name" : "John",
"father_name" : "Thomas",
"department" : "Contain Writting",
"experience" : 2,
"mobile_no" : 9856321478,
"gender" : "Male",
"salary" : 22000,
"age" : 26
}
{
"_id" : 4,
"name" : "Olivia",
"father_name" : "Noah",
"department" : null,
"experience" : 4,
"mobile_no" : 9045641478,
"gender" : "Female",
"salary" : 30000,
"age" : 27
}
{
"_id" : 6,
"name" : "John",
"father_name" : "Liam",
"department" : "Softwre Tester",
"experience" : 10,
"mobile_no" : 9014536987,
"gender" : "Male",
"salary" : 55000,
"age" : 30
}
示例3:使用$gte运算符更新值
在这个示例中,我们正在更新工作经验大于等于3年的员工的薪水字段。
>db.employee.update({experience : {gte : 3}}, {set : {salary : 50000}})
输出:
{
"_id" : 3,
"name" : "Ava",
"father_name" : "William",
"department" : "Marketing manager",
"experience" : 5,
"mobile_no" : 8789654178,
"gender" : "Female",
"salary" : 50000,
"age" : 25
}
{
"_id" : 4,
"name" : "Olivia",
"father_name" : "Noah",
"department" : null,
"experience" : 4,
"mobile_no" : 9045641478,
"gender" : "Female",
"salary" : 50000,
"age" : 27
}
{
"_id" : 6,
"name" : "John",
"father_name" : "Liam",
"department" : "Softwre Tester",
"experience" : 10,
"mobile_no" : 9014536987,
"gender" : "Male",
"salary" : 50000,
"age" : 30
}