Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az $ceil operátor kiszámítja a bemeneti szám felső határát. Ez az operátor a legkisebb egész számot adja vissza, amely nagyobb vagy egyenlő a bemenettel.
Szemantika
{
$ceil: <number>
}
Paraméterek
| Paraméter | Description |
|---|---|
<number> |
Az a bemeneti szám, amelynek a felső határát vissza kell adni. Null vagy hiányzó mező esetén $ceil null értéket ad vissza. |
Példák
Tekintse át ezt a mintadokumentumot az áruházak gyűjteményéből.
{
"_id": "0fcc0bf0-ed18-4ab8-b558-9848e18058f4",
"name": "First Up Consultants | Beverage Shop - Satterfieldmouth",
"location": {
"lat": -89.2384,
"lon": -46.4012
},
"staff": {
"totalStaff": {
"fullTime": 8,
"partTime": 20
}
},
"sales": {
"totalSales": 75670,
"salesByCategory": [
{
"categoryName": "Wine Accessories",
"totalSales": 34440
},
{
"categoryName": "Bitters",
"totalSales": 39496
},
{
"categoryName": "Rum",
"totalSales": 1734
}
]
},
"promotionEvents": [
{
"eventName": "Unbeatable Bargain Bash",
"promotionalDates": {
"startDate": {
"Year": 2024,
"Month": 6,
"Day": 23
},
"endDate": {
"Year": 2024,
"Month": 7,
"Day": 2
}
},
"discounts": [
{
"categoryName": "Whiskey",
"discountPercentage": 7
},
{
"categoryName": "Bitters",
"discountPercentage": 15
},
{
"categoryName": "Brandy",
"discountPercentage": 8
},
{
"categoryName": "Sports Drinks",
"discountPercentage": 22
},
{
"categoryName": "Vodka",
"discountPercentage": 19
}
]
},
{
"eventName": "Steal of a Deal Days",
"promotionalDates": {
"startDate": {
"Year": 2024,
"Month": 9,
"Day": 21
},
"endDate": {
"Year": 2024,
"Month": 9,
"Day": 29
}
},
"discounts": [
{
"categoryName": "Organic Wine",
"discountPercentage": 19
},
{
"categoryName": "White Wine",
"discountPercentage": 20
},
{
"categoryName": "Sparkling Wine",
"discountPercentage": 19
},
{
"categoryName": "Whiskey",
"discountPercentage": 17
},
{
"categoryName": "Vodka",
"discountPercentage": 23
}
]
}
]
}
1. példa – Az egy alkalmazottra jutó átlagos értékesítési mennyiség felső határának kiszámítása
Az egy alkalmazottra jutó értékesítési mennyiség felső határának kiszámításához először futtasson egy lekérdezést, amely elosztja az áruház teljes értékesítését az alkalmazottak számával. Ezután a $ceil operátorral adja vissza a számított érték felső határát.
db.stores.aggregate([{
$match: {
_id: "40d6f4d7-50cd-4929-9a07-0a7a133c2e74"
}
},
{
$project: {
name: 1,
totalSales: "$sales.totalSales",
totalStaff: {
$add: ["$staff.totalStaff.fullTime", "$staff.totalStaff.partTime"]
},
ceiledAverageSalesPerStaff: {
$ceil: {
$divide: [
"$sales.totalSales",
{
$add: ["$staff.totalStaff.fullTime", "$staff.totalStaff.partTime"]
}
]
}
}
}
}
])
Ez a lekérdezés a következő eredményt adja vissza:
[
{
"_id": "40d6f4d7-50cd-4929-9a07-0a7a133c2e74",
"name": "Proseware, Inc. | Home Entertainment Hub - East Linwoodbury",
"totalSales": 151864,
"totalStaff": 39,
"ceiledAverageSalesPerStaff": 3894
}
]