ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

MongoDB聚合操作符:$abs

2026/9/11 7:46:01 拓冰建站 浏览量
MongoDB聚合操作符:$abs

$abs聚合操作符用于返回数值的绝对值。

语法

{ $abs: <数值> }

<数值>表达式可以是任何能被解析为数值的合法表达式。

用法

如果$abs<number>参数被解析为null值或引用不存在的字段,将返回null,如果参数被解析为NaN,也会返回NaN

例如结果
{abs:-1}1
{abs:1}1
{abs:-0.01}-.01
{abs:null}null

举例

集合temperatureChange包含下面的文档:

db.temperatureChange.insertMany( [{ _id: 1, startTemp: 50, endTemp: 80 },{ _id: 2, startTemp: 40, endTemp: 40 },{ _id: 3, startTemp: 90, endTemp: 70 },{ _id: 4, startTemp: 60, endTemp: 70 }
] )

下面的例子计算startTempendTemp之间的差值:

db.temperatureChange.aggregate([{$project: { delta: { $abs: { $subtract: [ "$startTemp", "$endTemp" ] } } }}
])

操作返回的结果如下:

{ "_id" : 1, "delta" : 30 }
{ "_id" : 2, "delta" : 0 }
{ "_id" : 3, "delta" : 20 }
{ "_id" : 4, "delta" : 10 }