2016-09-26 31 views
1

我有這樣的數據:MongoDB的多威寶成徵求意見單場

{"ID" : "334", "Q1": "aaaaaaa", "Q2": "bbbbbbbbb"}, 
{"ID" : "335", "Q1": "cccccc", "Q2": "ddddddd"}, 

,並希望結合域導致:

{"ID" : "334", "Q": "Q1", "Comment": "aaaaaaaa"}, 
{"ID" : "334", "Q": "Q2", "Comment": "bbbbbbbb"}, 
{"ID" : "335", "Q": "Q1", "Comment": "cccccccc"}, 
{"ID" : "334", "Q": "Q2", "Comment": "dddddddd"} 
+1

https://docs.mongodb.com/manual/tutorial/store-javascript-function-on-server /另外,使用Mongo並嘗試從中生成標準化(類似SQL)的數據不是很有諷刺意味嗎?也許你應該重新評估你的數據庫選擇? – sed

+0

你打算將結果存儲在同一個集合中,還是有機會將數據保存到新集合中,然後重命名? – profesor79

+0

不,僅用於運行實時聚合查詢。謝謝,得到解決方案,將顯示在下面。 – Albert

回答

0
db.getCollection('test1').aggregate(
[ 
{ 
    $project: { 
    _id: false, 
    id: "$ID", 
    comment : [{"id": {"$literal":"Q1"} , "text": "$Q1"}, {"id": {"$literal":"Q2"}, "text": "$Q2"}] } }, 
{ 
$unwind : "$comment" 
}, 
{$match : {comment.text : {$ne: null}} 
} 
] 
) 
+1

請編輯更多信息。僅限代碼和「嘗試這個」的答案是不鼓勵的,因爲它們不包含可搜索的內容,也不解釋爲什麼有人應該「嘗試這個」。 – abarisone