0

次の構造を使用するドキュメントが複数ある場合:

{ 
  "_id" : ObjectId("4f9c6fe033cddec1bea430f2"), 
  "title" : "Product #1",
  "comments" : 
  [
  {
    "comment" : "My comment",  
    "date" : "2012-03-01 00: 00: 00",   
    "name" : "Test Name",   
    "username" : "Test Username"
  },
  {
    "comment" : "My comment",  
    "date" : "2012-03-01 00: 00: 00",   
    "name" : "Test Name 2",   
    "username" : "Test Username 2"
  }
  ]
}

reviews.nameを含むすべてのドキュメントを検索して更新することはできますか?たとえば、user.name:test name 2のすべてのドキュメントを検索し、Cassieに変更するとします。それは可能ですか?そうでない場合は、コメントを別のコレクションに入れる方がよいでしょうか。

4

1 に答える 1

2

はい、可能です。を使用comments.usernameしてそれを見つけ、配列に投稿しているので、 $位置演算子comments.$.usernameを使用してそこに入るようにmongoに指示する必要があることに注意してください。

于 2012-05-01T00:47:34.593 に答える