0

次のSQLクエリをMongoDbで複製するにはどうすればよいですか?

update Person set Alias = Name;

Personテーブルに列がある場所Alias, Name

クエリが複数の行に影響を与えるようにしたい。更新クエリがアップサートをサポートできないかどうかは関係ありません。更新するだけで、挿入する必要はありません。

4

2 に答える 2

2

残念ながら、その機能は MongoDB では利用できません。ドキュメントをループして、一度に 1 つずつ更新し、読み取りと更新のペアを実行する必要があります。

これを同時実行セーフにしたい場合は、ある種のロックを実装する必要があります。楽観的か悲観的か。

于 2012-11-27T00:37:02.163 に答える
0
myDb.myCollection.find({}).forEach(
function (person) { 
      person.Alias = person.Name
      myDb.myCollection.save(person)
}
)
于 2012-11-26T21:05:22.507 に答える