Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MongoDB

การหาค่าสัมบูรณ์ (Absolute Value) ด้วย MongoDB Aggregation Framework

ใช้ตัวดำเนินการ $abs ใน Aggregation Framework เพื่อหาค่าสัมบูรณ์

ตัวอย่างการใช้งาน

สร้างคอลเลกชันพร้อมข้อมูลตัวเลขบวกและลบ:

> db.absoluteValueDemo.insert({"Value":98});
WriteResult({ "nInserted" : 1 })
> db.absoluteValueDemo.insert({"Value":-100});
WriteResult({ "nInserted" : 1 })
> db.absoluteValueDemo.insert({"Value":0});
WriteResult({ "nInserted" : 1 })
> db.absoluteValueDemo.insert({"Value":-9999990});
WriteResult({ "nInserted" : 1 })

แสดงเอกสารทั้งหมด:

> db.absoluteValueDemo.find().pretty();

ผลลัพธ์:

{ "_id" : ObjectId("5ca271f56304881c5ce84b9a"), "Value" : 98 }
{ "_id" : ObjectId("5ca271fa6304881c5ce84b9b"), "Value" : -100 }
{ "_id" : ObjectId("5ca271fe6304881c5ce84b9c"), "Value" : 0 }
{ "_id" : ObjectId("5ca2720f6304881c5ce84b9d"), "Value" : -9999990 }

คำนวณค่าสัมบูรณ์ด้วย $abs ใน Aggregation

> db.absoluteValueDemo.aggregate({ $project: { AbsoluteValue: { $abs: '$Value' } }});

ผลลัพธ์:

{ "_id" : ObjectId("5ca271f56304881c5ce84b9a"), "AbsoluteValue" : 98 }
{ "_id" : ObjectId("5ca271fa6304881c5ce84b9b"), "AbsoluteValue" : 100 }
{ "_id" : ObjectId("5ca271fe6304881c5ce84b9c"), "AbsoluteValue" : 0 }
{ "_id" : ObjectId("5ca2720f6304881c5ce84b9d"), "AbsoluteValue" : 9999990 }

หมายเหตุ: $abs จะคืนค่าสัมบูรณ์ของตัวเลข ทำให้ค่าลบกลายเป็นบวก ค่า 0 ยังคงเป็น 0