0
我的文檔如下所示(忽略了這個問題的時間點):子文檔的總陣列成單一的文件
{
"_id": "xyz-800",
"site": "xyz",
"user": 800,
"timepoints": [
{"timepoint": 0, "a": 1500, "b": 700},
{"timepoint": 2, "a": 1000, "b": 200},
{"timepoint": 4, "a": 3500, "b": 1500}
],
"groupings": [
{"type": "MNO", "group": "<10%", "raw": "1"},
{"type": "IJK", "group": "Moderate", "raw": "23"}
]
}
我可以拼合(也許不是正確的術語),因此groupings
是一個單一的文件內。我想結果是這樣的:
{
"id": "xyz-800",
"site": "xyz",
"user": 800,
"mnoGroup": "<10%",
"mnoRaw": "1",
"ijkGroup": "Moderate",
"ijkRaw": "23"
}
在現實中我想mnoGroup
和mnoRaw
屬性如果屬性groupings.type = "MNO"
存在與否要創建不管。與ijk
屬性相同。
謝謝你的建議。我添加了一個過濾器,並採取了第一個元素,所以我們沒有硬編碼。 'mnoGroup:{$ arrayElemAt:[{$ filter:{input:「$ cohorts」,as:「cohort」,cond:{$ eq:[「$$ cohort.cohortType」,「MNO」]}}},0 ]},' –
是的,我昨天晚上想到的只是今天早上忘了。對於那個很抱歉。 – Veeram
不用擔心。你指出我正確的方向,然後我開始鍛鍊我的大腦。我想我剛剛在MongoDB的三年級畢業。在新的冒險之上。 –