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 $pop Operator wird verwendet, um das erste oder letzte Element eines Arrays zu entfernen. Dieser Operator ist nützlich, wenn Sie Arrays verwalten müssen, indem Sie Elemente von beiden Enden entfernen. Der $pop Operator kann in Aktualisierungsvorgängen verwendet werden.
Syntax
{
$pop: {
<field>: <value>
}
}
Parameter
| Parameter | Beschreibung |
|---|---|
<field> |
Das Feld, das das Array enthält, aus dem Sie ein Element entfernen möchten. |
<value> |
Wird 1 verwendet, um das letzte Element zu entfernen und -1 das erste Element zu entfernen. |
Beispiele
Betrachten Sie dieses Beispieldokument aus der Speichersammlung.
{
"_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: Entfernen des letzten Elements aus einem Array
Um das letzte Element aus dem Tagarray zu entfernen, führen Sie eine Abfrage mit dem operator $pop im Tagfeld mit dem Wert 1 aus.
db.stores.update({
_id: "7954bd5c-9ac2-4c10-bb7a-2b79bd0963c5"
}, {
$pop: {
tag: 1
}
})
Diese Abfrage gibt das folgende Ergebnis zurück.
[
{
"acknowledged": true,
"insertedId": null,
"matchedCount": "1",
"modifiedCount": "1",
"upsertedCount": 0
}
]
Beispiel 2: Entfernen des ersten Elements aus einem Array
Um das erste Element aus dem promotionEvents-Array zu entfernen, führen Sie eine Abfrage mit dem Operator $pop auf dem PromotionEvents-Array mit dem Wert -1 aus.
db.stores.update({
_id: "7954bd5c-9ac2-4c10-bb7a-2b79bd0963c5"
}, {
$pop: {
promotionEvents: -1
}
})
Diese Abfrage gibt das folgende Ergebnis zurück.
[
{
"acknowledged": true,
"insertedId": null,
"matchedCount": "1",
"modifiedCount": "1",
"upsertedCount": 0
}
]
Zugehöriger Inhalt
- Überprüfen Sie die Optionen für die Migration von MongoDB zu Azure Cosmos DB für MongoDB (vCore).
- Weitere Informationen zur Featurekompatibilität mit MongoDB.