TODO:MongoDB的查詢更新刪除總結

TODO:MongoDB的查詢更新刪除總結數組

  1. 經常使用查詢,條件操做符查詢,< 、<=、>、>=、!= 對應 MongoDB的查詢操做符是$lt、$lte、$gt、$gte、$ne

    例:函數

    db.getCollection(‘image_detail’).find({「dig」 : {$gte:0}})//查詢大於等於0的數據code

  2. $all,$in的區別{「dig」 : {$all : [0,1]}查詢出來的結果dig必須有0和1

    {「dig」 : {$in : [0,1]}查詢出來的結果dig能夠有0和1,或0,或1排序

  3. 有in就有not in,可是沒有not allnot in的操做符是$nin,{「dig」 : {$nin : [0,1]},查詢出來的dig值不包含0,1
  4. $nin還有個替換的方式$in 取反 {$not : {$in : [0,1]}},巧妙的使用$not,能夠解決不少使用場景db.getCollection(‘image_detail’).find({「dig」 :{$not : {$in:[0,1]}}}

    db.getCollection(‘image_detail’).find({「dig」 :{$not : {$all:[0,1]}}})圖片

  5. 數組的or查詢操做符$ordb.getCollection(‘image_detail’).find({$or:[{「dig」 :{$not : {$in:[0,1]}}},{「group」 : false}]})
  6. $exists判斷字段釋放存在,{group:{$exists:true}}表示存在group字段,false這是不存在db.getCollection(‘image_detail’).find({group:{$exists:true}})
  7. 巧妙的使用null,{group:null}能夠查詢出group爲null的記錄,以及沒有group字段的記錄,若是要查詢出字段group爲null的值,就須要配合{$exists:true}的使用db.collection.find({group:{「$in」:[null],」$exists」:true}})
  8. 查詢記錄條數使用count()db.getCollection(‘image_detail’).find({group:null}).count()
  9. 用sort函數排序,sort({dig:1})按升序排序,sort({dig:-1})按降序排序db.getCollection(‘image_detail’).find().sort({dig:1})

    db.getCollection(‘image_detail’).find().sort({dig:-1})ip

  10. skip和limit語句,跳過幾條記錄而後查詢指定數目的記錄db.getCollection(‘image_detail’).find().sort({dig:-1}).skip(10).limit(10)
  11. 數據更新update的使用,update經常使用到4個參數,第一個參數是查詢條件,

    第二個參數是更新語句,rem

    第三個參數upsert 可選參數意思是,若是不存在update的記錄,是否插入objNew,true爲插入,默認是false,不插入;get

    第四個參數multi_bool可選,默認是false,只更新找到的第一條記錄,若是這個參數爲true,就把按條件查出來多條記錄所有更新。it

    db.getCollection(‘image_detail’).update({}, {「$set」: {「dig」:3}},false,true)io

  12. 數組更新push,刪除pulldb.getCollection(‘image_detail’).update({「group」 : false},{「$pull」: {「tags」:」圖片」}},false,true)

    db.getCollection(‘image_detail’).update({},{「$push」: {「tags」:」圖片」},」$inc」:{「dig」:1}},false,true)

  13. 數組切片查詢$slice,{「tags」 : {$slice:10}}查詢數據前10條記錄,

    {「tags」 : {$slice:-10}}查詢數據後10跳記錄,

    {「tags」 : {$slice:[2,5}}查詢第2條數據後5條跳記錄

    這個例子查詢顯示的字段爲tags,image,dig

    db.getCollection(‘image_detail’).find({},{「tags」: {「$slice」:[2,3]},」_id」:0,」image」:1,」dig」:1})

  14. 遞增的參數$inc,遞減呢?{「$inc」 : {「dig」:1}} 是dig字段增1,

    {「$inc」 : {「dig」:-1}} 是dig字段減1

  15. 刪除removedb.getCollection(‘image_detail’).find({「dig」:1})
  16. 經常使用helpdb.help()

    db.find.help()

    db.update.help()

    wxgzh:ludong86qrcode_for_gh_6bb1f39ae99c_258

相關文章
相關標籤/搜索