但是現在我不知道如何過濾
我正在聚合過濾后的資料:
[
{
"_id": "61cea071cfa3c96b9a4d2657",
"name": "Utils",
"children": [
{
"name": "Code",
"_id": "61cebb4e6c4a5c643494d1a1",
"children": [{name:"jahn"}]
},
{
"name": "Image",
"_id": "61ceb8ad6c4a5c643494d11e",
"children": []
}
]
},
{
"_id": "61cea071cfa3c96b9a4d2111",
"name": "Names",
"children": [
{
"name": "que",
"_id": "61cebb4e6c4a5c643494d1a1",
"children": [
]
},
{
"name": "filter",
"_id": "61cebb4e6c4a5c643494d1a1",
"children": [
{name:"jahn"}
]
}
]
},
]
期待您的幫助 如何在孩子為空且不顯示時過濾掉孩子
期望的結果:
[
{
"_id": "61cea071cfa3c96b9a4d2657",
"name": "Utils",
"children": [
{
"name": "Code",
"_id": "61cebb4e6c4a5c643494d1a1",
"children": [
{name:"jahn"}
]
}
]
},
{
"children": [
{
"children": [
{name:"jahn"}
]
}
]
},
]
我想要孩子中的孩子,如果它是空的,它不會顯示整個物件
uj5u.com熱心網友回復:
如果您嘗試過濾二級children陣列,則可以使用$filter.
db.collection.aggregate([
{
$project: {
_id: 1,
name: 1,
children: {
"$filter": {
"input": "$children",
"cond": {
"$ne": [
"$$this.children",
[]
]
}
}
}
}
}
])
示例 Mongo Playground
筆記:
"$ne": [
"$$this.children",
[]
]
可以替換為:
"$ne": [
{
$size: "$$this.children"
},
0
]
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/405571.html
標籤:
上一篇:如何在貓鼬中用鍵值遞減值
