-1
我有一個擁有年份,作者和_id(假設)的Mongo表。我需要做的就是過濾某一年(比如說2006年),在作者身上進行分組,併爲每位作者獲取獨特的_id列表。作者是一個數組。MongoDB - 在應用另一列的組之後獲取列的不同值
我的表的快照是如下
{
"_id": ObjectId("54898fbb306ba2153c3e637b"),
"Author": [
"Hullman, J.",
"Drucker, S.",
"Riche, N.H.",
"Bongshin Lee",
"Fisher, D.",
"Adar, E."
],
"Year": "2013"
}{
"_id": ObjectId("54898fbb306ba2153c3e637c"),
"Author": [
"Schulz, H.",
"Nocke, T.",
"Heitzler, M.",
"Schumann, H."
],
"Year": "2013",
}{
"_id": ObjectId("54898fbc306ba2153c3e6b58"),
"Author": [
"Boissonnat, J.-D.",
"Geiger, B."
],
"Year": "1993",
}
,我有到現在是如下查詢。
db.list_input_file.aggregate([
{'$match':{'Year':{$eq:'2006'}}},
{'$unwind':'$Author'},
{'$group':{'_id':'$Author', 'count': { '$sum': 1 }}}
])
所有我需要的是格式的輸出[{ 「作者姓名」:[ID列表]},{ 「作者姓名」:[ID列表]}]
因此顯示您的文檔。 「作者」數組中有什麼內容。我的錢是你實際使用的Mongoose,這是一個文檔引用數組。 –
我能找到解決方案。看到我下面發佈的答案。謝謝! –
那麼也許你應該顯示一些數據來解釋我的答案是有效的。人們無法通過您發佈的內容來確定這一點。這是一個問答網站。你的問題沒有足夠的細節來證明答案的正確性。 –