1
比方說,我有如下記錄:MongoDB的組成字典式結構
{ id: 1, value : 1, Date: 2016-01-01 },
{ id: 1, value : 2, Date: 2016-01-01 },
{ id: 2, value : 3, Date: 2016-01-01 },
{ id: 3, value : 4, Date: 2016-01-01 }
MongoDB中C#驅動程序如何將我所說的收集與此數據格式生成類似:
{
{
id: 1,
records : [
{value : 1, Date: 2016-01-01},
{value : 2, Date: 2016-01-01}
]},
{
id : 2,
records : [{value : 3, Date: 2016-01-01}]
},
{
id : 3,
records : [{value : 4, Date: 2016-01-01}]
}
}
所以我想在「id」字段上進行分組,然後按照列表的形式返回按ID分組的所有結果。所以結構會像C#的
Dictionary<int, List<MyObj>>
聚合框架將成爲你的好友在這裏;查看[**'$ group' **](https://docs.mongodb.org/manual/reference/operator/aggregation/group/#pipe._S_group)管道運算符,您可以在其中對文檔進行分組通過'id'鍵並使用[**'$ push' **]創建'records'數組(https://docs.mongodb.org/manual/reference/operator/aggregation/push/#grp._S_push )運營商。 – chridam
使用nosql並試圖獲得標準化的類似於sql的輸出是不是具有諷刺意味?也許你應該重新考慮你的數據庫選擇? – sed
@Stan我的問題是什麼「類似sql」?我沒有看到問題的危害......除了這個問題中顯示的內容之外,還有很多理由使用mongo(或一般的nosql)。爲什麼不在閱讀時嘗試和規範化數據,如果我以後會在代碼中執行這些操作? – MartinM