MongoDB聚合运算符:$pow

文章目录


MongoDB聚合运算符: p o w ‘ pow ` powpow`聚合运算符用于求数字指定的指数并返回结果。

语法

{ $pow: [ <number>, <exponent> ] }

参数说明:

  • <number>表达式可以是任何可解析为数值的表达式
  • <exponent>表达式可以是任何能够解析为数值的表达式
  • 零的指数不能是负值

使用

结果与输入类型相同,除非无法以该类型准确表示。在这些情况下:

  • 如果结果可表示为64位整数,则32位整数将转换为 64 位整数。
  • 如果结果无法表示为64位整数,则32位整数将转换为双精度型。
  • 如果结果不能表示为64位整数,则64位整数将转换为double。

如果任一参数解析为null值或引用缺少的字段,则$pow返回null。如果任一参数解析为NaN,则$pow返回NaN

例子结果
{ $pow: [ 5, 0 ] }1
{ $pow: [ 5, 2 ] }25
{ $pow: [ 5, -2 ] }0.04
{ $pow: [ -5, 0.5 ] }NaN

举例

使用下面的脚本创建quizzes集合:

db.quizzes.insertMany( [
   {
      _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 }
      ]
   }
] )

以下示例计算每个quiz的方差:

db.quizzes.aggregate( [
   { $project: { variance: { $pow: [ { $stdDevPop: "$scores.score" }, 2 ] } } }
] )

操作返回下面的结果:

{ _id : 1, variance : 64.66666666666667 }
{ _id : 2, variance : 64.66666666666667 }
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

原子星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值