如何在MongoDB上进行复杂的更新

如何在MongoDB上进行复杂的更新,mongodb,crud,mongodb-query,Mongodb,Crud,Mongodb Query,我有个问题。我的数据如下: 我想在此数据中再添加一个播放列表部分。 我的数据应该是这样的: 更新查询不起作用。 我该怎么办?提前谢谢。 我在努力 $dbData=array'$set'=>array'playlists'=>array'blabla'=> “布拉布拉”; $users->UPDATARRAY“U id”=>新MongoId“541f0e2216c8272c058b4567”, $dbData 也可以有多个相同的键,但不建议您有2个播放列表键并想要更多 一个合理的解决方案是将播放

我有个问题。我的数据如下:

我想在此数据中再添加一个播放列表部分。 我的数据应该是这样的:

更新查询不起作用。 我该怎么办?提前谢谢。 我在努力

$dbData=array'$set'=>array'playlists'=>array'blabla'=> “布拉布拉”; $users->UPDATARRAY“U id”=>新MongoId“541f0e2216c8272c058b4567”, $dbData


也可以有多个相同的键,但不建议您有2个播放列表键并想要更多

一个合理的解决方案是将播放列表作为一个数组,并将元素推入其中

{
  "name" : "username",
  "surname" : "surname",
  "playlists": [...]
}

$dbData = array('$push' => array('playlists' => array ('blabla' => 'blabla'))); 
$users->update(array('_id' => new MongoId ('541f0e2216c8272c058b4567')), $dbData);

给我们看一些代码。您是如何尝试这样做的?您的意思是要将另一个播放列表添加到数据中存在的播放列表中?或者只是想添加另一个数组?更容易告诉我们您需要什么?我想将数组添加到现有数据中。
{
  "name" : "username",
  "surname" : "surname",
  "playlists": {
    "name": "playlistName",
    "date": "27-09-14",
    "musics": [
      "music name 1",
      "music name 2"
    ]
  },
  "playlists": {
    "name": "playlistName2",
    "date": "27-09-14",
    "musics": [
      "music name 1",
      "music name 2"
    ]
  },
  "playlists" : {
    "blabla" : "blabla"
  }

}
{
  "name" : "username",
  "surname" : "surname",
  "playlists": [...]
}

$dbData = array('$push' => array('playlists' => array ('blabla' => 'blabla'))); 
$users->update(array('_id' => new MongoId ('541f0e2216c8272c058b4567')), $dbData);