MongoDB $abs 运算符

2024 年 9 月 6 日 | 3 分钟阅读

MongoDB 提供了各种算术表达式运算符。$abs 运算符是其中之一。$abs 运算符用于返回代码中特定数字的绝对值。绝对值意味着无论数字是正数还是负数,它总是返回一个正值。

语法

要点

  1. 如果数字为 null,则 $abs 运算符返回 null。
  2. 如果输入值引用一个缺失的字段,则 $abs 运算符返回 null。
  3. 如果数字是 NaN,则 $abs 运算符返回 NaN。

示例

在下面的示例中,我们将使用

{
        {
                "_id" : ObjectId("56254d4fdf2222265r4g12ds3d65f"),
                "std_name" : "Micky",
                "gender" : "Female",
                "class" : "X",
                "fees" : 5000,
                "exam_fees" : 500,
                "age" : 16,
                "Total_marks" : 405
                "Result" : "Pass"
        },
        {
                "_id" : ObjectId("56254d4fdf2222265r4g12ds34563"),
                "std_name" : "Moty",
                "gender" : "Male",
                "fees" : 4000,
                "exam_fees" : 500,
                "class" : "VII",
                "age" : 15,
                "Total_marks" : 705
                "Result" : "Pass"
        },
        {
                "_id" : ObjectId("56254d4fdf2222265r4g12ds31478"),
                "std_name" : "Thomas",
                "gender" : "Male",
                "fees" : 3000,
                "exam_fees" : 500,                                
                "class" : "V",
                "age" : 12,
                " Total_marks" : 450
                " Result" : "pass"
        },
        {
                "_id" : ObjectId("56254d4fdf2222265r4g12ds37832"),
                "std_name" : "Jin",
                "gender" : "Female",
                "fees" : 5000,
                "exam_fees" : 500,
                "class" : "X",
                "age" : 16,
                "Total_marks" : 750
                "Result" : "Pass"
        },
        { 
                "_id" : ObjectId("56254d4fdf2222265r4g12ds1c46"),
                "std_name" : "Mia",
                "gender" : "Female",
                "fees" : 6000,
                "exam_fees" : 500,
                "class" : "XI",
                "age" : 17,
                " Total_marks" : 450
                "Result" : "Pass"
       },
       {
                "_id" : ObjectId("56254d4fdf2222265r4g12ds315hj"),
                "std_name" : "Mike,
                "gender" : "Male",
                "fees" : {
                           "school_fees" :4000,
                           "exam_fees" : 500,
                           "pending_fees" : 950,
                         }
                "class" : "V",
                "age" : 15,
                "Total_marks" : 450
                "Result" : "Pass"
        }
}	

示例 1:使用 $abs 运算符

在本例中,我们将仅查找女学生的总费用(费用 + 考试费用)。

输出

{
                "_id" : ObjectId("56254d4fdf2222265r4g12ds3d65f"),
                "std_name" : "Micky",
                "class" : "X",
                "age" : 16,
                "Result" : "Pass",
                "Total_fees" : 5500
}
{
                "_id" : ObjectId("56254d4fdf2222265r4g12ds37832"),
                "std_name" : "Jin",
                "class" : "X",
                "age" : 16,
                "Result" : "Pass",
                "Total_fees" : 5500
}
{ 
                "_id" : ObjectId("56254d4fdf2222265r4g12ds1c46"),
                "std_name" : "Mia",
                "class" : "XI",
                "age" : 17,
                "Result" : "Pass",
                "Total_fees" : 6500,
}

示例 2:MongoDB $abs 运算符(检索嵌入文档中的数据)

在本例中,我们将查找名为 Mike 的学生的总费用(学费 + 考试费用 + 待缴费用)。

输出

{
  "_id" : ObjectId("56254d4fdf2222265r4g12ds315hj"),
  "std_name" : "Mike,
  "class" : "V",
  "age" : 15,
  "Result" : "Pass",
  "Total_fees" : 5450  
}