mongodb隨筆

1. 刪除文檔屬性
  • var xx = db.collection.find({query})
  • xx.newkey="new value"
  • delete xx.key1
  • db.collection.update({query},xx)

操作說明:通過查詢獲取某個文檔,給該文檔設置新的key/value對,刪除舊的key=》key1,然後通過update操作更新該文檔

2.  刪除文檔

db.collection.remove({query})

3. 插入文檔

db.collection.insert({})

4. 修改器$set和$unset

$unset可以刪除鍵,$set可以創建鍵(該鍵不存在),$set可以修改鍵的類型(通過update)

5. 數組修改器

push,pop,pull,ne,each,addtoset

ne+push可以實現類似addtoset的功能

addtoset+echo可以實現一次插入多個值

pop可以實現從數組頭或者尾刪除單個元素({$pop:{key:1}從數組尾刪除,{$pop:{key:-1}從數組頭刪除)

pull可以實現按某種查詢條件刪除($pull:{query})

6. 數組定位修改器

數組元素可以通過下標來訪問,下標從0開始

例如:

{key:{[{x1:1},{x1:2},{x1:3}]} 則 key.0.x1=1

另可以通過定位操作符“$”來查詢匹配的文檔

db.xx.update({key.x1:1},{$set:{key.$.x1:10}}),若查詢條件有多個匹配,則僅改變第一個匹配結果

7. getLastError()和findAnyModified()

8 . 每個客戶端連接都有獨立的隊列,打開兩個shell,就會建立2個獨立的連接,在其中一個插入的文檔並不一定馬上會在另個一shell中展現

9.  not和mod ,exists

 mod[num1,num2]:查詢條件值除以num1後值爲num2

10. size和slice

size返回數組長度,slice返回片段。slice的參數可以爲正/負/數組

11. limit/skip/sort

12. elemMatch

查詢條件匹配單個嵌套文檔,而不是多個文檔的組合匹配。


發佈了37 篇原創文章 · 獲贊 1 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章