【MongoDB】3.詳細命令集合

來源:互聯網
上載者:User

標籤:www   rdbms   等於   closed   blog   alt   開始   exe   2.0   

【注意:MongoDB自動將_id欄位設定為主鍵】

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->

話不多說  直接 開始敲命令吧!

【注意1:MongoDB  命令結尾不要打;  是會報錯的】

【注意2:RoboMongo  執行命令的快速鍵是F5   停止執行快速鍵是F6】

1.show dbs  

顯示所有資料的列表

 

2.db 

顯示當前資料庫物件或集合

 

3.use

可以串連到一個指定的資料庫

 

 4. db.createCollection("myNewCollection",{capped:true,size:1024}) 

固定大小的collection【collection大小單位是位元組】【capped:true 代表固定大小】

 

5.db.collection.stats() 

產看當前db下的某個collection的詳細資料

例如:

db.users.stats()

 1 { 2     "ns" : "oneDB.users", 3     "count" : 4, 4     "size" : 256, 5     "avgObjSize" : 64, 6     "numExtents" : 1, 7     "storageSize" : 8192, 8     "lastExtentSize" : 8192.0, 9     "paddingFactor" : 1.0,10     "paddingFactorNote" : "paddingFactor is unused and unmaintained in 3.0. It remains hard coded to 1.0 for compatibility only.",11     "userFlags" : 1,12     "capped" : false,13     "nindexes" : 1,14     "totalIndexSize" : 8176,15     "indexSizes" : {16         "_id_" : 817617     },18     "ok" : 1.019 }
View Code
 1 部分參數的詳細解釋: 2          ns:     集合的命名空間,可以理解為集合名稱 3          count:  集合中的文檔總數 4          size:   集合中資料佔用空間大小,不包括索引 ,單位為位元組。 5          avgObjSize:  平均對像佔用的空間大小 6          storageSize: 給整個集合分配的儲存空間,當刪除集合中的文檔時,這個值不會降代。 7          numExtents:  連續分配的資料區塊 8          nindexes:     索引個數,每個集合至少有一個 _id 索引。  9          lastExtentSize: 最近分配的塊的大小10          paddingFactor:   這個參數不太清楚,以後補充。11          totalIndexSize:  所有索引大小總和12          indexSizes:      列出集合的所有索引欄位,以及索引大小。    
View Code

6.db.dropDatabase()

刪除當前資料庫

 

7.use  dbName

有則指定到這個資料庫,沒有則建立這個資料庫  但是建立之後是預設不會顯示在資料庫列表的,需要往裡面插入一條資料 就能顯示出來了

【注意:插入資料應該有大括弧括起來的{}】

例如:

use oneDB
db
db.users.insert({_id:1,"name":"張三丰","age":23})

8.db.collection.drop()

刪除集合

例如:

9. 定義變數 插入資料

document = {_id:1,"name":"張三","age":23,"url":"www.baidu.com"}
db.users.save(document)

10. 更新某一條資料

db.collection.update(   <query>,   <update>,   {     upsert: <boolean>,     multi: <boolean>,     writeConcern: <document>   })
  • query : update的查詢條件,類似sql update查詢內where後面的。
  • update : update的對象和一些更新的操作符(如$,$inc...)等,也可以理解為sql update查詢內set後面的
  • upsert : 可選,這個參數的意思是,如果不存在update的記錄,是否插入objNew,true為插入,預設是false,不插入。
  • multi : 可選,mongodb 預設是false,只更新找到的第一條記錄,如果這個參數為true,就把按條件查出來多條記錄全部更新。
  • writeConcern :可選,拋出異常的層級。

例如:

db.users.update({_id:1},{$set:{"url":"https://home.cnblogs.com/u/sxdcgaq8080/"}},{upsert:true,muti:true})
db.users.find()

11.db.users.find()  查詢【各種查詢】

  find() 方法以非結構化的方式來顯示所有文檔

db.users.find().pretty()

  如果你需要以易讀的方式來讀取資料,可以使用 pretty() 方法;pretty() 方法以格式化的方式來顯示所有文檔

db.users.findOne()

  findOne() 方法,它只返回一個文檔

 

操作 格式 範例 RDBMS中的類似語句
等於 {<key>:<value>} db.users.find({"name":"張三"}).pretty() where by = ‘張三‘
小於 {<key>:{$lt:<value>}} db.users.find({"age":{$lt:23}}).pretty() where likes < 23
小於或等於 {<key>:{$lte:<value>}} db.users.find({"age":{$lte:23}}).pretty() where likes <= 23
大於 {<key>:{$gt:<value>}} db.users.find({"age":{$gt:23}}).pretty() where likes > 23
大於或等於 {<key>:{$gte:<value>}} db.users.find({"age":{$gte:23}}).pretty() where likes >= 23
不等於 {<key>:{$ne:<value>}} db.users.find({"age":{$ne:23}}).pretty() where likes != 23

 

 

 例如:等於-->db.users.find({"age":23})



小於-->db.users.find({"age":{$lt:25}})

小於等於-->db.users.find({"age":{$lte:25}})


 

 

AND 條件查詢

例如:db.users.find({"age":{$lte:25},"name":"張三"})

兩個key-value並列放著就行了

 

OR條件查詢

例如:db.users.find({$or:[{"name":"張三"},{"age":25}]})

【注意:需要使用  {$or:[{key:value},{key:value}]}這種格式】

 

AND和OR混用的情況

例如:db.users.find({"age":{$gte:23},$or:[{_id:1},{"name":"裡斯"}]})

 

剖析一下結構:

db.users.find({
  "age":{$gte:23},
  $or:[
    {_id:1},
    {"name":"裡斯"}
  ]
})

 

 




 

 

 

 

 

【MongoDB】3.詳細命令集合

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.