3

2 つの値を持つドキュメントがある場合:

{
  "name" : "Bob",
  "location" "France"
}

次に、「name」、「country」を含む配列をドキュメントに渡します。「場所」を削除してドキュメント全体を更新するにはどうすればよいですか?

2 つのドキュメントの違いに気付かないため、特定のフィールドの設定を解除することはできません。ドキュメントデータを提供された配列に単純に置き換える方法を探しています。

4

1 に答える 1

6

必要なレコードを含む新しいドキュメントを提供updateする場合は、ドキュメントを置き換えます。

例えば:

db.so.insert({"name":"Bob", "location": "France"})
db.so.update({"name":"Bob", "location": "France"}, {"name":"Roberto", "country":"Italy"})
db.so.find()

{ "_id" : ObjectId(), "name" : "Roberto", "country" : "Italy" }

もちろん、_id文書の

于 2012-08-06T22:38:56.960 に答える