你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
运算符 $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
}
]