Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der $floor Operator gibt die größte ganze Zahl zurück, die kleiner oder gleich der angegebenen Zahl ist.
Syntax
{
$floor: <number>
}
Die Parameter
| Parameter | Description |
|---|---|
<number> |
Ein beliebiger gültiger Ausdruck, der in eine Zahl aufgelöst wird. |
Examples
Betrachten Sie dieses Beispieldokument aus der Stores-Sammlung.
{
"_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
}
]
}
]
}
Beispiel 1: Berechnung des Bodens des Gesamtumsatzes und der Rabatte
Um die Untergrenze des durchschnittlichen Umsatzvolumens für ein bestimmtes Geschäft und die Untergrenze des Umsatzes pro Kategorie zu berechnen, führen Sie eine Abfrage mit dem $floor-Operator aus, um die gewünschten Ergebnisse zurückzugeben.
db.stores.aggregate([{
$match: {
_id: "40d6f4d7-50cd-4929-9a07-0a7a133c2e74"
}
},
{
$project: {
name: 1,
averageSalesFloor: {
$floor: {
$divide: [
"$sales.totalSales",
{
$size: "$sales.salesByCategory"
}
]
}
},
categoriesWithFloorSales: {
$map: {
input: "$sales.salesByCategory",
as: "category",
in: {
categoryName: "$$category.categoryName",
floorSales: {
$floor: "$$category.totalSales"
}
}
}
}
}
}
])
Diese Abfrage gibt das folgende Ergebnis zurück:
[
{
"_id": "40d6f4d7-50cd-4929-9a07-0a7a133c2e74",
"name": "Proseware, Inc. | Home Entertainment Hub - East Linwoodbury",
"averageSalesFloor": 30372,
"categoriesWithFloorSales": [
{
"categoryName": "Sound Bars",
"floorSales": 2120
},
{
"categoryName": "Home Theater Projectors",
"floorSales": 45004
},
{
"categoryName": "Game Controllers",
"floorSales": 43522
},
{
"categoryName": "Remote Controls",
"floorSales": 28946
},
{
"categoryName": "VR Games",
"floorSales": 32272
}
]
}
]