2016-03-01 50 views
-1

使用值爲鍵鑑於這是蒙戈的輸出find命令如何在MongoDB中

{ 
    "cust" : NumberInt(8388), 
    "key" : "T_SUB_CAT", 
    "value" : "98", 
    "tag1" : "T_RECENT_SUB_CAT_1" 
},{ 
    "cust" : NumberInt(8388), 
    "key" : "T_SUB_CAT", 
    "value" : "109", 
    "tag1" : "T_RECENT_SUB_CAT_2" 
},{ 
    "cust" : NumberInt(8388), 
    "key" : "T_SUB_CAT", 
    "value" : "6", 
    "tag1" : "T_RECENT_SUB_CAT_3" 
} 

如何使用聚合和$項目得到結果像

{ 
    "cust" : NumberInt(8388), 
    "T_RECENT_SUB_CAT_1" : "98", 
    "T_RECENT_SUB_CAT_2" : "109", 
    "T_RECENT_SUB_CAT_3" : "6" 
} 

請幫我使用項目/總計

非常感謝

+0

什麼母鹿濟與關鍵意思?你可以在一個領域創造一個(唯一)的索引,但 有MongoDB中看到的是https任何外鍵關係: //docs.mongodb.org –

+0

值TAG1作爲列和值的, 像 { 「卡斯特」:NumberInt(8388), 「鍵」: 「T_SUB_CAT」, 「值」: 「6」, 「 tag1「:」T_RECENT_SUB_CAT_3「 } 在上面需要的是,結果會像 { 「cust」:NumberInt(8388), 「T_RECENT_SUB_CAT_3」:「6」, } 希望你明白要求。 – jackSparrow

+0

關鍵是一個列的名稱,它不是什麼spl – jackSparrow

回答

0

把所有導致VAR說cust2,

while(cust2.hasNext()){ 
var document = cust2.next(); db.<collection>.update( 
{ cust: document.cust, tag1:document.tag1 }, 
{ cust:document.cust , tag1:document.tag1 , 
key:document.key, value:document.value }, 
{upsert:true} 
) }