mongodb一條文件的值存的是數組,在更新的時候如何給數組push新的資料?
某草草
某草草 2017-05-02 09:24:04
0
2
621
db.col.insert({
    name: 'kad',
    tags: ['mongodb', 'database', 'NoSQL'],
})

我現在有了新的資料'mysql'需要加入到tags對應的陣列中,如何push進去呢?

db.col.update({'name':'kad'},{$set:{'tags':'mysql'}}) 这样不是相当于覆盖了原来的数据么

我想讓結果變成 tags:['mongodb','database','NoSQL','mysql']

某草草
某草草

全部回覆(2)
曾经蜡笔没有小新

請參考

db.col.update({name : "kad"}, { $push : { tags : "mysql"}})

另外請參考官方文件:

https://docs.mongodb.com/manu...

建議:多閱讀MongoDB文件;MongoDB的文件品質很高。

滿天的星座

使用addToSet

db.col.update({"name":"kad"},{$addToSet:{"tags":"mysql"}});

或使用push

db.col.update({"name":"kad"},{$push:{"tags":"redis"}});

兩者區別在addToSet只有在數組中不存在時候才添加,如果已經存在了不會再添加,push不管插入的值原來數組裡有沒有都插入,即可以插入重複的值。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!