Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Operatorn $concatArrays används för att kombinera flera matriser i en enda matris. Den här operatorn är användbar när du behöver sammanfoga matriser från olika dokument eller fält i ett dokument.
Syntax
{
$concatArrays: ["<array1>", "<array2>"]
}
Parameterar
| Parameter | Description |
|---|---|
<array1>, <array2> |
Matrisfälten som är avsedda för sammanfogning. |
Examples
Överväg det här exempeldokumentet från butiksamlingen.
{
"_id": "7954bd5c-9ac2-4c10-bb7a-2b79bd0963c5",
"name": "Lakeshore Retail | DJ Equipment Stop - Port Cecile",
"location": {
"lat": 60.1441,
"lon": -141.5012
},
"staff": {
"totalStaff": {
"fullTime": 2,
"partTime": 0
}
},
"sales": {
"salesByCategory": [
{
"categoryName": "DJ Headphones",
"totalSales": 35921
},
{
"categoryName": "DJ Cables",
"totalSales": 1000
}
],
"fullSales": 3700
},
"promotionEvents": [
{
"eventName": "Bargain Blitz Days",
"promotionalDates": {
"startDate": {
"Year": 2024,
"Month": 3,
"Day": 11
},
"endDate": {
"Year": 2024,
"Month": 2,
"Day": 18
}
},
"discounts": [
{
"categoryName": "DJ Turntables",
"discountPercentage": 18
},
{
"categoryName": "DJ Mixers",
"discountPercentage": 15
}
]
},
{
"eventName": "Discount Delight Days",
"promotionalDates": {
"startDate": {
"Year": 2024,
"Month": 5,
"Day": 11
},
"endDate": {
"Year": 2024,
"Month": 5,
"Day": 18
}
}
}
],
"tag": [
"#ShopLocal",
"#FashionStore",
"#SeasonalSale",
"#FreeShipping",
"#MembershipDeals"
]
}
Exempel 1: Sammanfoga matriser i ett dokument
Den här frågan sammanfogar fältet categoryName från matrisen promotionEvents.discounts med matrisen tag till en enda kombineradTags-matris.
db.stores.aggregate([{
$match: {
_id: "7954bd5c-9ac2-4c10-bb7a-2b79bd0963c5"
}
}, {
$project: {
combinedTags: {
$concatArrays: ["$promotionEvents.discounts.categoryName", "$tag"]
}
}
}])
Den här frågan returnerar följande resultat.
[
{
"_id": "7954bd5c-9ac2-4c10-bb7a-2b79bd0963c5",
"combinedTags": [ '#ShopLocal', '#NewArrival', '#NewArrival', '#FreeShipping' ]
}
]
Relaterat innehåll
- Granska alternativen för att migrera från MongoDB till Azure DocumentDB.
- Läs mer om funktionskompatibilitet med MongoDB.