婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > MongoDB教程之?dāng)?shù)據(jù)操作實(shí)例

MongoDB教程之?dāng)?shù)據(jù)操作實(shí)例

熱門(mén)標(biāo)簽:南京400電話怎樣辦理 企業(yè)智能外呼系統(tǒng)價(jià)格多少 兗州電話外呼營(yíng)銷系統(tǒng) 智能電銷機(jī)器人銷售話術(shù) 徐州ai電銷機(jī)器人原理 福州電銷機(jī)器人源代碼 高德地圖標(biāo)注商戶位置 機(jī)器人外呼系統(tǒng)軟件存在問(wèn)題 沈陽(yáng)營(yíng)銷電銷機(jī)器人招商

1.  批量插入:

     以數(shù)組的方式一次插入多個(gè)文檔可以在單次TCP請(qǐng)求中完成,避免了多次請(qǐng)求中的額外開(kāi)銷。就數(shù)據(jù)傳輸量而言,批量插入的數(shù)據(jù)中僅包含一份消息頭,而多次單條插入則會(huì)在每次插入數(shù)據(jù)時(shí)封裝消息頭數(shù)據(jù)。對(duì)于數(shù)據(jù)導(dǎo)入而言,我們可以使用mongoimport完成。
 
2.  數(shù)據(jù)庫(kù)清除:

復(fù)制代碼 代碼如下:

    > db.users.remove()
 

    以上命令將會(huì)清除users集合中的所有數(shù)據(jù),但是不會(huì)刪除集合本身以及關(guān)聯(lián)的索引。數(shù)據(jù)刪除操作是不可恢復(fù)的,一旦刪除就物理的刪除了。對(duì)于全集合清除這種case,一個(gè)更為有效的方式是直接刪除集合對(duì)象本身以及他關(guān)聯(lián)的所有索引,之后再依次重建,如:
 
復(fù)制代碼 代碼如下:

    > db.one_collection.drop()
 

 
3.  數(shù)據(jù)更新: 

    如果在執(zhí)行數(shù)據(jù)更新時(shí),有多條文檔匹配更新條件,為了避免更新后的_id出現(xiàn)重復(fù)性沖突,MongoDB將僅更新第一條查詢結(jié)果,如:
 

復(fù)制代碼 代碼如下:

    > post1 = { "name": "stephen", "age" : "35"}
    { "name" : "stephen", "age" : "35" }
    > post2 = { "name": "stephen", "age" :  36}
    { "name" : "stephen", "age" : 36 }
    > db.blog.insert(post1)
    > db.blog.insert(post2)
    > post3 = { "name" : "stephen", "age": 37}
    { "name" : "stephen", "age" : 37 }
    > db.blog.update({"name":"stephen"},post3)
    > db.blog.find()
    { "_id" : ObjectId("4fcd7e2e20668578cc1097d8"), "name" : "stephen", "age" : 36 }
    { "_id" : ObjectId("4fcd7e2820668578cc1097d7"), "name" : "stephen", "age" : 37 }
 

 
4.  修改器:

    使用修改器進(jìn)行數(shù)據(jù)更新是原子的,也是高效的,不同于全部文檔更新的是被更新文檔的_id不會(huì)變化,而文檔完全更新則會(huì)修改文檔的_id,以及相關(guān)的索引。
  

復(fù)制代碼 代碼如下:

 > db.blog.find()
    { "_id" : ObjectId("4fcd7e2820668578cc1097d7"), "name" : "stephen", "age" : 41 }
    { "_id" : ObjectId("4fcd81bb20668578cc1097d9"), "name" : "stephen", "age" : 38 }
    --$inc修改符將匹配條件的文檔的age鍵原子加一,缺省情況下只是更新第一條符合條件的文檔。
    > db.blog.update({"name":"stephen"},{"$inc":{"age":1}}) 
    > db.blog.find()
    { "_id" : ObjectId("4fcd7e2820668578cc1097d7"), "name" : "stephen", "age" : 42 }
    { "_id" : ObjectId("4fcd81bb20668578cc1097d9"), "name" : "stephen", "age" : 38 }
    --可以通過(guò)update函數(shù)的最后一個(gè)參數(shù)來(lái)指定更新所有符合條件的文檔,如:
    > db.blog.update({"name":"stephen"},{"$inc":{"age":1}},true,true)
    > db.blog.find()
    { "_id" : ObjectId("4fcd7e2820668578cc1097d7"), "name" : "stephen", "age" : 43 }
    { "_id" : ObjectId("4fcd81bb20668578cc1097d9"), "name" : "stephen", "age" : 39 }

    --$set修改符直接修改匹配文檔的內(nèi)容,如果修改的鍵存在則直接修改,否則新增。
    > db.blog.update({"name":"stephen"},{"$set":{"genda":"male"}})
    > db.blog.find()
    { "_id" : ObjectId("4fcd88b720668578cc1097da"), "age" : "35", "genda" : "male", "name" : "stephen" }
    --$unset修改符合$set的功能是完全相反的,如:
    > db.blog.update({"name":"stephen"},{"$unset":{"genda":"male"}})
    > db.blog.find()
    { "_id" : ObjectId("4fcd88b720668578cc1097da"), "age" : "35", "name" : "stephen" }
    --可以通過(guò)$set修改符修改嵌套子文檔。
    > db.blog.find()
    { "_id" : ObjectId("4fcd8e0220668578cc1097db"), "title" : "A Blog Post", "author" : { "name" : "joe", "email" : "joe@ee.com" } }
    > db.blog.update({"title":"A Blog Post"},{"$set":{"author.name":"joe schmoe"}})
    > db.blog.find()
    { "_id" : ObjectId("4fcd8e0220668578cc1097db"), "author" : { "email" : "joe@ee.com", "name" : "joe schmoe" }, "title" : "A Blog Post" }


 

5.  數(shù)組修改器:

復(fù)制代碼 代碼如下:

    > db.blog.insert({"title":"one blog"})
    > db.blog.find()
    { "_id" : ObjectId("4fcd909520668578cc1097dc"), "title" : "one blog" }
    --如果其操作的鍵不存在,則創(chuàng)建新的鍵值,其值的類型為數(shù)組類型。
    > log.update({"title":"one blog"}, {"$push": {"comments":{"content":"hello"}}})
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fcd909520668578cc1097dc"),
         "comments" : [
                 {
                         "content" : "hello"
                 }
         ],
         "title" : "one blog"
    }
    --如果$push操作的鍵值已經(jīng)存在,且其值為數(shù)組類型,該修改符將為該數(shù)組添加新的數(shù)組元素。
    > db.blog.update({"title":"one blog"}, {"$push": {"comments":{"content":"word"}}
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fcd909520668578cc1097dc"),
         "comments" : [
                 {
                         "content" : "hello"
                 },
                 {
                         "content" : "word"
                 }
         ],
         "title" : "one blog"
    }
 
    > post = {"username":"joe", "emails":["joe@example.com","joe@gmail.com","joe@yahoo.com"]}
    {
         "username" : "joe",
         "emails" : [
                 "joe@example.com",
                 "joe@gmail.com",
                 "joe@yahoo.com"
         ]
    }
    > db.blog.insert(post)
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2e468b2ac404941134bed"),
         "username" : "joe",
         "emails" : [
                 "joe@example.com",
                 "joe@gmail.com",
                 "joe@yahoo.com"
         ]
    }
    --$addToSet適用于數(shù)組,如果數(shù)組中該元素已經(jīng)存在,該命令就不做任何操作后返回,否則將新元素插入數(shù)組。
    > db.blog.update({"username":"joe"}, {"$addToSet": {"emails":"joe@gmail.com"}})
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2e468b2ac404941134bed"),
         "username" : "joe",
         "emails" : [
                 "joe@example.com",
                 "joe@gmail.com",
                 "joe@yahoo.com"
         ]
    }
    > db.blog.update({"username":"joe"}, {"$addToSet": {"emails":"joe@hotmail.com"}
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2e468b2ac404941134bed"),
         "emails" : [
                 "joe@example.com",
                 "joe@gmail.com",
                 "joe@yahoo.com",
                 "joe@hotmail.com"
         ],
         "username" : "joe"
    }
    --$addToSet和$each的組合可以將數(shù)組插入到另外一個(gè)數(shù)組中。
    > db.blog.update({"username":"joe"},{"$addToSet": {"emails":{"$each":["joe@php.net","joe@example.com"]}}})
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2e468b2ac404941134bed"),
         "emails" : [
                 "joe@example.com",
                 "joe@gmail.com",
                 "joe@yahoo.com",
                 "joe@hotmail.com",
                 "joe@php.net"
         ],
         "username" : "joe"
    }
    --$pop從數(shù)組中刪除一個(gè)元素,如參數(shù)為1,表示從數(shù)組的尾部刪除一個(gè)元素,如果是-1,則從頭部刪除。
    > db.blog.update({"username":"joe"}, {"$pop":{"emails":1}})
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2e468b2ac404941134bed"),
         "emails" : [
                 "joe@example.com",
                 "joe@gmail.com",
                 "joe@yahoo.com",
                 "joe@hotmail.com"
         ],
         "username" : "joe"
    }
    > db.blog.update({"username":"joe"}, {"$pop":{"emails":-1}})
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2e468b2ac404941134bed"),
         "emails" : [
                 "joe@gmail.com",
                 "joe@yahoo.com",
                 "joe@hotmail.com"
         ],
         "username" : "joe"
    }
    --$pull修改符則是從數(shù)據(jù)中刪除指定的元素
    > db.blog.update({"username":"joe"}, {"$pull":{"emails":"joe@yahoo.com"}})
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2e468b2ac404941134bed"),
         "emails" : [
                 "joe@gmail.com",
                 "joe@hotmail.com"
         ],
         "username" : "joe"
    }
    --使數(shù)組中出現(xiàn)重復(fù)的元素,便于后面修改符的功能演示。
    > db.blog.update({"username":"joe"}, {"$push": {"emails":"joe@gmail.com"}})
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2e468b2ac404941134bed"),
         "emails" : [
                 "joe@gmail.com",
                 "joe@hotmail.com",
                 "joe@gmail.com"
         ],
         "username" : "joe"
    }
    --在數(shù)組中,第一個(gè)元素的下標(biāo)是0,然后依次增長(zhǎng)。下面的示例是將數(shù)組中下標(biāo)為1
    --(第二個(gè)元素)的元素值修改為新值。
    > db.blog.update({"username":"joe"}, {"$set":{"emails.1":"joe@example.com"}})
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2e468b2ac404941134bed"),
         "emails" : [
                 "joe@gmail.com",
                 "joe@example.com",
                 "joe@gmail.com"
         ],
         "username" : "joe"
    }
    --有的時(shí)候,特別是在修改查詢結(jié)果的時(shí)候,我們無(wú)法獲知結(jié)果文檔數(shù)組下標(biāo),MongoDB
    --提供了$定位符表示查詢結(jié)果的下標(biāo)。但是該他只更新第一個(gè)匹配元素。
    > db.blog.update({"emails":"joe@gmail.com"},{"$set":{"emails.$":"joe@hotmail.com"}})
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2e468b2ac404941134bed"),
         "emails" : [
                 "joe@hotmail.com",
                 "joe@example.com",
                 "joe@gmail.com"
         ],
         "username" : "joe"
   }
 

6.  upsert:

    upsert是一種特殊的更新。要是沒(méi)有文檔符合更新條件,就會(huì)以這個(gè)條件和更新文檔為基礎(chǔ)創(chuàng)建一個(gè)新的文檔。如果找到了匹配的文檔,則正常更新。
   

復(fù)制代碼 代碼如下:

 > db.blog.remove()
    > db.blog.update({"username":"joe"},{"username":"joe","age":30},true)
    > db.blog.findOne()
    {
         "_id" : ObjectId("4fd2faac576cd9c101ac0f3d"),
         "username" : "joe",
         "age" : 30
    }
 

    下面的示例可以在新增的同時(shí),修改新增后的值。
 
復(fù)制代碼 代碼如下:

    > db.blog.remove()
    > db.blog.update({"count":25},{"$inc":{"count":3}},true)
    > db.blog.find()
    { "_id" : ObjectId("4fd2fd59576cd9c101ac0f3e"), "count" : 28 }
 

    save是一個(gè)shell函數(shù),可以在文檔不存在時(shí)插入,存在時(shí)更新。upsert也可以完成同樣的工作,但是不如save命令方便。
 
復(fù)制代碼 代碼如下:

    > var x = db.blog.findOne()
    > x.count = 40
    40
    > db.blog.save(x)
    > db.blog.findOne()
    { "_id" : ObjectId("4fd2fde4576cd9c101ac0f3f"), "count" : 40 }
 

7.  返回已更新文檔:

    可以通過(guò)getLastError命令獲取更新多個(gè)文檔時(shí)被更新的文檔數(shù)量。
 

復(fù)制代碼 代碼如下:

    > db.blog.remove()
    > db.blog.insert({"name":"stephen"})
    > db.blog.insert({"name":"stephen3"})
    > db.blog.insert({"name":"stephen4"})
    > db.blog.update({},{"$set":{"name":"liu"}},false,true)
    --n:3表示修改的數(shù)量為3。
    > db.runCommand({getLastError:1})
    {
        "updatedExisting" : true,
        "n" : 3,
        "connectionId" : 1,
        "err" : null,
        "ok" : 1
    }
 

    findAndModify可以原子性的修改查詢結(jié)果,也可以原子性的刪除查詢結(jié)果。
 
復(fù)制代碼 代碼如下:

    > db.blog.insert({"name":"stephen"})
    > db.blog.insert({"name":"stephen2"})
    > db.blog.find()
    { "_id" : ObjectId("4fd30cd117f6dccb7c058244"), "name" : "stephen" }
    { "_id" : ObjectId("4fd30cd417f6dccb7c058245"), "name" : "stephen2" }        
    > db.runCommand({"findAndModify":"blog", "query":{"name":"stephen2"},"update":{"$set":{"name":"stephen3"}}})
    > db.blog.find()
    { "_id" : ObjectId("4fd30cd117f6dccb7c058244"), "name" : "stephen" }
    { "_id" : ObjectId("4fd30cd417f6dccb7c058245"), "name" : "stephen3" }
    > runCommand({"findAndModify":"blog", "query":{"name":"stephen3"},"remove":true})
    > db.blog.find()
    { "_id" : ObjectId("4fd30cd117f6dccb7c058244"), "name" : "stephen" }
 

    findAndModify命令中每個(gè)鍵對(duì)應(yīng)的值如下:
    findAndModify: 字符串類型的集合名稱。
    query:查詢文檔,用來(lái)檢索文檔的條件。
    sort: 排序結(jié)果的條件。
    update:修改文檔,對(duì)所找到的文檔執(zhí)行的更新。
    remove:布爾類型,表示是否刪除文檔。
    new:布爾類型,表示返回的是更新前的文檔還是更新后的文檔。缺省是更新前文檔。
    update和remove必須有一個(gè)存在,也只能有一個(gè)存在。如果沒(méi)有匹配的文檔,該命令會(huì)返回一個(gè)錯(cuò)誤。這個(gè)命令有些限制,即一次只能處理一個(gè)文檔,也不能執(zhí)行upsert操作,只能更新已有文檔。

您可能感興趣的文章:
  • MongoDB教程之索引介紹
  • MongoDB教程之入門(mén)基礎(chǔ)知識(shí)
  • MongoDB教程之聚合(count、distinct和group)
  • MongoDB教程之基本管理命令

標(biāo)簽:邯鄲 吉安 丹東 景德鎮(zhèn) 鶴崗 大理 本溪 昭通

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《MongoDB教程之?dāng)?shù)據(jù)操作實(shí)例》,本文關(guān)鍵詞  MongoDB,教程,之,數(shù)據(jù),操作,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《MongoDB教程之?dāng)?shù)據(jù)操作實(shí)例》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于MongoDB教程之?dāng)?shù)據(jù)操作實(shí)例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲欧美日韩电影| 色久综合一二码| 国产一区二区三区美女| 精品久久久久久无| 99精品久久免费看蜜臀剧情介绍| 欧美精品一区二区高清在线观看| 欧美一级久久久| 91精品福利视频| 成人av在线播放网址| 精久久久久久久久久久| 亚洲一区二区中文在线| 国产精品久久精品日日| 日韩你懂的电影在线观看| 欧美性感一区二区三区| 一本在线高清不卡dvd| 97国产精品videossex| 国产福利不卡视频| 丁香六月久久综合狠狠色| 国产精品一区二区在线观看网站| av高清久久久| 久久99久久久久| 韩国午夜理伦三级不卡影院| 亚洲国产欧美一区二区三区丁香婷 | 亚洲福利视频一区| 亚洲欧美一区二区三区极速播放 | 久久精品亚洲一区二区三区浴池| 精品国产免费一区二区三区四区 | 日本道精品一区二区三区| 99久久99久久精品国产片果冻| 成人黄色在线视频| 99久久久国产精品| 91九色02白丝porn| 欧美精品在线视频| 日韩视频免费直播| 久久蜜桃香蕉精品一区二区三区| 久久无码av三级| 国产精品天干天干在观线| 国产精品久久久久久久久果冻传媒 | 91国产免费观看| 欧美亚洲动漫精品| 日韩午夜电影av| 久久精品视频一区二区| 欧美国产精品劲爆| 一区二区三区四区精品在线视频| 亚洲第一主播视频| 韩国精品主播一区二区在线观看 | 亚洲一区中文日韩| 天天爽夜夜爽夜夜爽精品视频| 日韩激情中文字幕| 国产aⅴ综合色| 欧美少妇一区二区| 久久精品视频在线免费观看| 亚洲欧美日韩一区| 人人超碰91尤物精品国产| 国产激情一区二区三区| 在线一区二区三区做爰视频网站| 日韩欧美一卡二卡| 亚洲激情第一区| 国产美女精品一区二区三区| 欧美性受xxxx| 日韩免费观看2025年上映的电影| 国产精品久久久久久久第一福利 | 国产成人精品三级| 欧美午夜一区二区三区| 久久只精品国产| 性欧美疯狂xxxxbbbb| 粉嫩av一区二区三区| 91精品福利在线一区二区三区 | 视频一区视频二区中文| 成人精品视频网站| 2023国产精华国产精品| 亚洲国产成人porn| 91在线观看高清| 欧美国产综合色视频| 青娱乐精品视频在线| 日本高清免费不卡视频| 国产精品国产馆在线真实露脸| 秋霞午夜av一区二区三区| 在线观看一区二区精品视频| 国产欧美一区二区三区沐欲| 久久精品国产成人一区二区三区 | 欧美日韩一区成人| 亚洲人成精品久久久久| 成人福利视频网站| 久久久www成人免费毛片麻豆| 美国欧美日韩国产在线播放| 欧美色精品在线视频| 亚洲色图在线看| 99re这里只有精品首页| 国产精品久久影院| 大桥未久av一区二区三区中文| 久久影音资源网| 免费看欧美女人艹b| 日韩一级片网站| 香港成人在线视频| 欧美日韩中文字幕一区二区| 一区二区三区视频在线观看| 色婷婷精品大在线视频| 亚洲一区二区三区在线看| 欧美在线不卡一区| 亚洲成av人**亚洲成av**| 欧美三级中文字| 亚洲第一主播视频| 欧美一区二区三区视频免费| 日韩激情中文字幕| 欧美sm美女调教| 国产二区国产一区在线观看| 国产精品私人影院| 99麻豆久久久国产精品免费 | 高清国产一区二区| 中文av一区特黄| 99视频超级精品| 亚洲bt欧美bt精品777| 538在线一区二区精品国产| 免费在线观看视频一区| 欧美精品一区二区三区四区| 成人免费视频视频| 亚洲自拍另类综合| 亚洲成av人片一区二区梦乃| 欧美区一区二区三区| 久久精品国产精品青草| 国产女主播一区| 欧美中文字幕不卡| 日本午夜精品视频在线观看| 国产日韩精品久久久| 日本乱码高清不卡字幕| 久久国产乱子精品免费女| 中文字幕精品一区二区三区精品| 日本乱人伦一区| 韩日av一区二区| 国产精品免费久久久久| 91麻豆国产福利在线观看| 同产精品九九九| 中文字幕av免费专区久久| 色先锋aa成人| 日韩经典一区二区| 日韩理论片一区二区| 精品久久久久久最新网址| 欧美在线视频全部完| 国产精品 日产精品 欧美精品| 亚洲一区av在线| 欧美极品少妇xxxxⅹ高跟鞋| 9191成人精品久久| 色综合天天综合网国产成人综合天| 久久精品国产精品青草| 亚洲一卡二卡三卡四卡五卡| 国产精品久久影院| 精品国产一区二区三区不卡| 欧美日韩在线直播| a级精品国产片在线观看| 久久精品国产**网站演员| 亚洲一区二区五区| 日韩理论电影院| 中文字幕国产精品一区二区| 日韩一区二区影院| 欧美日韩一区二区三区四区| 色综合亚洲欧洲| 99精品视频在线免费观看| 国产精品资源在线观看| 老司机免费视频一区二区三区| 亚洲最新在线观看| 亚洲欧洲一区二区在线播放| 国产欧美日韩视频在线观看| 精品久久久网站| 日韩欧美一二区| 欧美一区二区三区四区五区 | 国产欧美视频在线观看| 91麻豆精品国产综合久久久久久| 91视频在线观看免费| 99re这里只有精品6| 99精品欧美一区二区三区小说| 成人免费看片app下载| 成人免费精品视频| 成人国产精品免费观看| 粉嫩av一区二区三区粉嫩 | 亚洲精品第1页| 亚洲婷婷在线视频| 亚洲人成网站色在线观看| 最新成人av在线| 亚洲激情av在线| 午夜精品福利一区二区蜜股av | 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 日韩精品视频网站| 亚洲va在线va天堂| 午夜精品久久久久久久蜜桃app| 亚洲国产成人tv| 丝袜亚洲另类丝袜在线| 日本最新不卡在线| 国产在线麻豆精品观看| 国产精品69久久久久水密桃| 高清在线不卡av| 色久优优欧美色久优优| 欧美精品亚洲二区| 久久综合色婷婷| 亚洲欧洲99久久| 日韩av一区二| 国产精品中文字幕日韩精品 | 奇米一区二区三区| 精品亚洲免费视频| 91麻豆免费观看|