你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

$sqrt

运算符 $sqrt 用于返回指定数字的平方根。 它通常用于聚合管道,用于对文档中的数字字段执行数学计算。

语法

{ $sqrt: <expression> }

参数

参数 DESCRIPTION
<expression> 解析为数字的任何有效表达式。

示例

示例 1:计算特定销售值的平方根

下面的示例演示如何计算文档中值的平方根 fullSales

db.collection.aggregate([
  {
    $project: {
      name: 1,
      fullSales: 1,
      sqrtFullSales: { $sqrt: "$sales.fullSales" }
    }
  }
])

此输出包括原始 fullSales 值及其平方根:

[
  { "_id": 1, "name": "Store A", "sales": { "fullSales": 100 }, "sqrtFullSales": 10 },
  { "_id": 2, "name": "Store B", "sales": { "fullSales": 225 }, "sqrtFullSales": 15 },
  { "_id": 3, "name": "Store C", "sales": { "fullSales": 400 }, "sqrtFullSales": 20 }
]

示例 2:按类别计算总销售额的平方根

此示例演示如何计算每个销售类别的 totalSales 平方根。

db.collection.aggregate([
  {
    $unwind: "$sales.salesByCategory"
  },
  {
    $project: {
      name: 1,
      categoryName: "$sales.salesByCategory.categoryName",
      totalSales: "$sales.salesByCategory.totalSales",
      sqrtTotalSales: { $sqrt: "$sales.salesByCategory.totalSales" }
    }
  }
])

此输出计算每个销售类别的 totalSales 的平方根:

[
  {
    "_id": 4,
    "name": "Electronics Store",
    "categoryName": "Laptops",
    "totalSales": 144,
    "sqrtTotalSales": 12
  },
  {
    "_id": 5,
    "name": "Fashion Outlet",
    "categoryName": "Shoes",
    "totalSales": 81,
    "sqrtTotalSales": 9
  }
]