Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
APLICA-SE A: MongoDB vCore
O $abs
operador retorna o valor absoluto de um número. Ele remove qualquer sinal negativo de um número, tornando-o positivo.
Sintaxe
A sintaxe do operador é a $isArray
seguinte:
{ $abs: <number> }
Parâmetros
Descrição | |
---|---|
<number> |
Qualquer expressão válida que seja resolvida para um número. Se a expressão for resolvida como nula ou se referir a um campo ausente, $abs retornará nulo. |
Exemplo
Vamos entender o uso com dados de exemplo do stores
conjunto de dados.
db.stores.aggregate([
{ $match: { "_id": "40d6f4d7-50cd-4929-9a07-0a7a133c2e74" } },
{
$project: {
name: 1,
"salesByCategory": {
$map: {
input: "$sales.salesByCategory",
as: "category",
in: {
categoryName: "$$category.categoryName",
totalSales: "$$category.totalSales",
differenceFromAverage: {
$abs: {
$subtract: [
"$$category.totalSales",
{ $avg: "$sales.salesByCategory.totalSales" }
]
}
}
}
}
}
}
}
])
Isso produzirá uma saída mostrando a diferença absoluta entre as vendas de cada categoria e as vendas médias:
{
"_id": "40d6f4d7-50cd-4929-9a07-0a7a133c2e74",
"name": "Proseware, Inc. | Home Entertainment Hub - East Linwoodbury",
"salesByCategory": [
{
"categoryName": "Sound Bars",
"totalSales": 2120,
"differenceFromAverage": 28252.8
},
{
"categoryName": "Home Theater Projectors",
"totalSales": 45004,
"differenceFromAverage": 14631.2
},
{
"categoryName": "Game Controllers",
"totalSales": 43522,
"differenceFromAverage": 13149.2
},
{
"categoryName": "Remote Controls",
"totalSales": 28946,
"differenceFromAverage": 1426.8
},
{
"categoryName": "VR Games",
"totalSales": 32272,
"differenceFromAverage": 1899.2
}
]
}
Conteúdo relacionado
- Examinar as opções de migração do MongoDB para o Azure Cosmos DB for MongoDB (vCore)
- Leia mais sobre Compatibilidade de recursos com o MongoDB