On this page
$log10 (aggregation)
在本页面
Definition
$log10
- 3.2 版中的新功能。
计算数字的对数底数 10,并将结果作为双精度值返回。
$log10具有以下语法:
{ $log10: <number> }
<number>
表达式可以是任何有效的expression,只要它可以解析为非负数即可。有关表达式的更多信息,请参见Expressions。
$log10等效于$log: [ <number>, 10 ]
表达式。
Behavior
如果参数解析为null
的值或引用了缺少的字段,则$log10
返回null
。如果参数解析为NaN
,则$log10
返回NaN
。
Example | Results |
---|---|
{ $log10: 1 } |
0 |
{ $log10: 10 } |
1 |
{ $log10: 100 } |
2 |
{ $log10: 1000 } |
3 |
Example
集合samples
包含以下文档:
{ _id: 1, H3O: 0.0025 }
{ _id: 2, H3O: 0.001 }
{ _id: 3, H3O: 0.02 }
以下示例计算 sample 的 pH 值:
db.samples.aggregate( [
{ $project: { pH: { $multiply: [ -1, { $log10: "$H3O" } ] } } }
] )
该操作返回以下结果:
{ "_id" : 1, "pH" : 2.6020599913279625 }
{ "_id" : 2, "pH" : 3 }
{ "_id" : 3, "pH" : 1.6989700043360187 }
See also