3
好,我需要離開做以下MongoDB的更新或插入子陣列
我有蒙戈收集儘可能
array (
'_id' => new MongoId("50513d8338fc5de706000000"),
'offers' =>
array (
'0' =>
array (
'minspend' => '50.00',
'cashback' => '1.50',
'percentage' => '0.03',
),
'1' =>
array (
'minspend' => '100.00',
'cashback' => '3.00',
'percentage' => '0.03',
),
),
'percentageTotal' => '0.06',
'test' => new MongoInt32(1),
)
,但可以說,我只想更新這部分
array (
'0' =>
array (
'minspend' => '50.00',
'cashback' => '1.50',
'percentage' => '0.03',
),
什麼是最好的方式來改變那部分子數組而不重新創建數組中的整個數據。
,並有可能做這樣的事情
array (
'0' =>
array (
'Offer_id'=> new MongoId(5715671561715),
'minspend' => '50.00',
'cashback' => '1.50',
'percentage' => '0.03',
),
)
如果我有offer。[]。offer_id我可以使用它來更新minspend等? – RussellHarrower
在這種情況下,請在查詢中使用offer_id作爲第二個條件(查詢_id和offers.offer_id並使用$符號作爲位置參數。請參見位置運算符的工作原理:http://www.mongodb.org/display/DOCS/Updating#Updating-The%24positionaloperator – Thomas
能否請你解釋一下這個問題?舉個例子,這些文檔確實沒有幫助 – RussellHarrower