参考 > 参考 > 经营者 > 聚合管道运营商 > $ pow(汇总)
在本页面
$pow
3.2版中的新功能。
将数字增加到指定的指数并返回结果。 $pow具有以下语法:
{ $pow: [ <number>, <exponent> ] }
该<number>表达式可以是任何有效的表达式,只要它可以解析为数字。
<number>
该<exponent>表达式可以是任何有效的表达式,只要它可以解析为数字。
<exponent>
您不能提高0到负指数。
0
结果将具有与输入相同的类型,除非无法用该类型精确表示。在这些情况下:
如果任何一个参数解析为null或指向缺少的字段,则$pow返回null。如果任一参数解析为 NaN,则$pow返回NaN。
null
NaN
{ $pow: [ 5, 0 ] }
1
{ $pow: [ 5, 2 ] }
25
{ $pow: [ 5, -2 ] }
0.04
{ $pow: [ -5, 0.5 ] }
名为的集合quizzes包含以下文档:
quizzes
{ "_id" : 1, "scores" : [ { "name" : "dave123", "score" : 85 }, { "name" : "dave2", "score" : 90 }, { "name" : "ahn", "score" : 71 } ] } { "_id" : 2, "scores" : [ { "name" : "li", "quiz" : 2, "score" : 96 }, { "name" : "annT", "score" : 77 }, { "name" : "ty", "score" : 82 } ] }
以下示例计算每个测验的方差:
db.quizzes.aggregate([ { $project: { variance: { $pow: [ { $stdDevPop: "$scores.score" }, 2 ] } } } ])
该操作返回以下结果:
{ "_id" : 1, "variance" : 64.66666666666667 } { "_id" : 2, "variance" : 64.66666666666667 }