2012-10-03 31 views
1
$db->akis->update(
array("h" => (string) $_SESSION["_id"], "m" => array('$exists' => false)), 
array('$set' => array("k" => $name)), 
array("multiple" => true) 
); 

我在這裏做的是,如果有一個m字段,不更新k。我想補充的是,「如果m字段存在」更新我而不是k字段,我該如何管理?mongodb更新如果一個字段不存在

謝謝

回答

0

我想你需要在這裏做兩個單獨的查詢。這對於MongoDB查詢解析器來說是太有條件的了。

所以,你需要把你的邏輯分爲兩個單獨的查詢與第二看起來像:

$db->akis->update(
array("h" => (string) $_SESSION["_id"], "m" => array('$exists' => true)), 
array('$set' => array("i" => $name)), 
array("multiple" => true) 
); 

運行一前一後。

+0

謝謝你回答我的問題Sammaye :) – johna

相關問題