在mongodb中,資料被儲存為乙個文件,資料結構有鍵值對組成。在文件中可以儲存乙個object陣列,本次就來了解如何對此類陣列進行操作。
現有資料如下:
以上是乙個個人資訊文件,而乙個人可以學到的技能是會變化的。當需要增加乙個技能:
$push的作用就是向已有的陣列加入乙個元素,不過push是不會檢查是否有重複資料的,所以如果用push多次增加,相同的資料也會被重複儲存。若是想要避免這種現象,就需要使用 $addtoset。
結果如下:
並沒有出現多個c的技能描述。
而在對陣列進行刪除操作時,也有兩種方式,分別是$pop和 $pull。
$pop:
$pull:
結果如下:
這兩者的區別在於$pop是在陣列的尾部與頭部進行刪除,而 $pull則是進行匹配刪除(注意:pull不是只刪除一條,他會刪除所有匹配的元素)。
當需要對陣列的部分值進行更新,則需要使用定位操作符:$
結果如下:
Scala學習筆記 陣列
對於scala來說,陣列是一塊相當總要的內容,因此掌握是十分重要的。陣列分為兩種 定長陣列 array 變長陣列 arraybuffer array 10個整數的陣列,所有元素的初始化為0 val nums new arraystring 長度為2的array string 型別是推斷出來的 注 已...
JS學習筆記 陣列
ecmas cript 中沒有提供類和介面等的定義,但它卻是一門物件導向的語言,由於它能夠通過其它 方式實現類似高階語言的物件導向功能,這些內容將在後面的文章中進行一步步的總結。此篇僅對 js中物件作簡要說明,重點彙總一些類似於物件的陣列的經常用法。物件建立 上篇提到建立物件的兩種方式 使用new ...
PHP學習筆記 陣列
學習的內容太多,用文章記錄知識點可以加深印象,也方便查詢!陣列初始化 php array array foo bar bar foo 自 php 5.4 起 array foo bar bar foo 初始化為空陣列 php array array array push array push arr...