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フィールドの代わりにiを更新することです。これをどのように管理できますか?

ありがとうございました

4

1 に答える 1

0

ここでは、2 つの個別のクエリを実行する必要があると思います。これは、MongoDB クエリ パーサーが処理するには条件が多すぎます。

したがって、ロジックを 2 つの別個のクエリに入れ、2 番目のクエリを次のようにする必要があります。

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

次から次へと走る。

于 2012-10-03T10:44:49.257 に答える