MongoDB基本操作命令

MongoDB數(shù)據(jù)類型

MongoDB創(chuàng)建/刪除數(shù)據(jù)庫

use DATABASE_NAME 如果數(shù)據(jù)庫不存在,創(chuàng)建數(shù)據(jù)庫介袜,否則切換指定數(shù)據(jù)庫
show dbs 查看所有數(shù)據(jù)庫
db.dropDatabase() 刪除當(dāng)前數(shù)據(jù)庫

MongoDB創(chuàng)建/刪除集合

db.createCollection('name',options) 創(chuàng)建集合
參數(shù)-- 1.name: 要創(chuàng)建的集合名稱 2.options: 可選參數(shù), 指定有關(guān)內(nèi)存大小及索引的選項

2.1 capped 布爾型 (可選)如果為true仪芒,則創(chuàng)建固定集合唁影。固定集合是指有著固定大小的集合,當(dāng)達(dá)到最大值時桌硫,它會自動覆蓋最早的文檔夭咬。當(dāng)該值為 true 時,必須指定 size 參數(shù)
2.2 autoIndexId 布爾 (可選)如為true铆隘,自動在 _id 字段創(chuàng)建索引卓舵。默認(rèn)為 false。
2.3 size 數(shù)值(可選)為固定集合指定一個最大值(以字節(jié)計)膀钠。如果 capped 為 true掏湾,也需要指定該字段。
2.4 max 數(shù)值 (可選)指定固定集合中包含文檔的最大數(shù)量肿嘲。

例如:創(chuàng)建固定集合 mycol融击,整個集合空間大小 6142800 KB, 文檔最大個數(shù)為 10000 個。

 db.createCollection("mycol", { capped : true, autoIndexId : true, size : 6142800, max : 10000 } )    

show collections 查看已有集合
db.collection.drop() 刪除集合 返回值為true和false

在MongoDB中不需創(chuàng)建集合雳窟。當(dāng)插入一些文檔尊浪,MongoDB會自動創(chuàng)建。###

MongoDB文檔增刪改查

文檔的數(shù)據(jù)結(jié)構(gòu)和JSON基本一樣封救。所有存儲在集合中的數(shù)據(jù)都是BSON格式拇涤。BSON是一種類json的一種二進(jìn)制形式的存儲格式,簡稱Binary JSON。
db.COLLECTION_NAME.insert(document) 向集合中插入文檔
db.COLLECTION_NAME.save(document) 如果不指定 _id 字段 save() 方法類似于 insert() 方法誉结。如果指定 _id 字段鹅士,則會更新該 _id 的數(shù)據(jù)。
update(),save()方法用于更新已存在的文檔惩坑。update()語法格式如下:

db.COLLECTION_NAME.update(
 <query>,
 <update>,
 {
   upsert: <boolean>,
   multi: <boolean>,
   writeConcern: <document>
  }
)

參數(shù)說明:
query : update的查詢條件掉盅,類似sql update查詢內(nèi)where后面的也拜。
update : update的對象和一些更新的操作符(如$,$inc...)等,也可以理解為sql update查詢內(nèi)set后面的
upsert : 可選趾痘,如果不存在update的記錄慢哈,是否插入objNew,true為插入,默認(rèn)是false扼脐,不插入岸军。
multi : 可選,mongodb 默認(rèn)是false,只更新找到的第一條記錄瓦侮,如果這個參數(shù)為true,就把按條件查出來多條記錄全部更新艰赞。
writeConcern :可選,拋出異常的級別

例如:更改title "MongoDB 教程"為 "MongoDB"肚吏。設(shè)置 multi 參數(shù)為 true方妖,會修改多條相同的文檔。否則只會更新找到的第一條文檔罚攀。

db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}},{multi:true})

save()方法通過傳入的文檔來替換已有文檔党觅。語法格式如下:

db.COLLECTION_NAME.save(
<document>,
  {
    writeConcern: <document>
  }
)

remove()是用來移除集合中的數(shù)據(jù)。語法格式如下:

db.COLLECTION_NAME.remove(
   <query>,
   <justOne>
)

參數(shù):query :(可選)刪除的文檔的條件斋泄。
justOne : (可選)如果設(shè)為 true 或 1杯瞻,則只刪除一個文檔。

如果你只想刪除第一條找到的記錄可以設(shè)置 justOne 為 1炫掐,如下所示:

db.COLLECTION_NAME.remove(DELETION_CRITERIA,1)

如果你想刪除所有數(shù)據(jù)魁莉,可以使用以下方式(類似常規(guī) SQL 的 truncate 命令):

db.COLLECTION_NAME.remove({})

db.COLLECTION_NAME.find(query, projection) 查看已插入文檔
參數(shù):query :可選,使用查詢操作符指定查詢條件
projection :可選募胃,使用投影操作符指定返回的鍵旗唁。查詢時返回文檔中所有鍵值, 只需省略該參數(shù)即可(默認(rèn)省略)痹束。
db.COLLECTION_NAME.find().pretty() 以格式化的方式來顯示所有文檔
db.COLLECTION_NAME.findOne() 返回一個文檔

find()方法可以傳入多個鍵(key)检疫,每個鍵(key)以逗號隔開,即常規(guī)SQL的AND條件祷嘶。語法格式如下:

db.COLLECTION_NAME.find({key1:value1, key2:value2}).pretty()

OR條件語句使用了關(guān)鍵字 $or,語法格式如下:

db.COLLECTION_NAME.find(
   {
      $or: [
         {key1: value1}, {key2:value2}
      ]
   }
).pretty()

條件操作符

(>) 大于 - $gt  
(<) 小于 - $lt  
(>=) 大于等于 - $gte  
(<= ) 小于等于 - $lte  

例子:db.COLLECTION_NAME.find({"key" : {$gt : 100}})

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末屎媳,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子论巍,更是在濱河造成了極大的恐慌剿牺,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,723評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件环壤,死亡現(xiàn)場離奇詭異,居然都是意外死亡钞诡,警方通過查閱死者的電腦和手機郑现,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評論 2 382
  • 文/潘曉璐 我一進(jìn)店門湃崩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人接箫,你說我怎么就攤上這事攒读。” “怎么了辛友?”我有些...
    開封第一講書人閱讀 152,998評論 0 344
  • 文/不壞的土叔 我叫張陵薄扁,是天一觀的道長。 經(jīng)常有香客問我废累,道長邓梅,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,323評論 1 279
  • 正文 為了忘掉前任邑滨,我火速辦了婚禮日缨,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘掖看。我一直安慰自己匣距,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,355評論 5 374
  • 文/花漫 我一把揭開白布哎壳。 她就那樣靜靜地躺著毅待,像睡著了一般。 火紅的嫁衣襯著肌膚如雪归榕。 梳的紋絲不亂的頭發(fā)上尸红,一...
    開封第一講書人閱讀 49,079評論 1 285
  • 那天,我揣著相機與錄音蹲坷,去河邊找鬼驶乾。 笑死,一個胖子當(dāng)著我的面吹牛循签,可吹牛的內(nèi)容都是我干的级乐。 我是一名探鬼主播,決...
    沈念sama閱讀 38,389評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼县匠,長吁一口氣:“原來是場噩夢啊……” “哼风科!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起乞旦,我...
    開封第一講書人閱讀 37,019評論 0 259
  • 序言:老撾萬榮一對情侶失蹤贼穆,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后兰粉,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體故痊,經(jīng)...
    沈念sama閱讀 43,519評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,971評論 2 325
  • 正文 我和宋清朗相戀三年玖姑,在試婚紗的時候發(fā)現(xiàn)自己被綠了愕秫。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片慨菱。...
    茶點故事閱讀 38,100評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖戴甩,靈堂內(nèi)的尸體忽然破棺而出符喝,到底是詐尸還是另有隱情,我是刑警寧澤甜孤,帶...
    沈念sama閱讀 33,738評論 4 324
  • 正文 年R本政府宣布协饲,位于F島的核電站,受9級特大地震影響缴川,放射性物質(zhì)發(fā)生泄漏茉稠。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,293評論 3 307
  • 文/蒙蒙 一二跋、第九天 我趴在偏房一處隱蔽的房頂上張望战惊。 院中可真熱鬧,春花似錦扎即、人聲如沸吞获。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽各拷。三九已至,卻和暖如春闷营,著一層夾襖步出監(jiān)牢的瞬間烤黍,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評論 1 262
  • 我被黑心中介騙來泰國打工傻盟, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留速蕊,地道東北人。 一個月前我還...
    沈念sama閱讀 45,547評論 2 354
  • 正文 我出身青樓娘赴,卻偏偏與公主長得像规哲,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子诽表,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,834評論 2 345

推薦閱讀更多精彩內(nèi)容

  • NoSql數(shù)據(jù)庫優(yōu)缺點 在優(yōu)勢方面主要體現(xiàn)在下面幾點: 簡單的擴展 快速的讀寫 低廉的成本 靈活的數(shù)據(jù)模型 在不足...
    dreamer_lk閱讀 2,705評論 0 6
  • 學(xué)習(xí)《MongoDB 權(quán)威指南·第2版》的筆記唉锌,結(jié)合 MongoDB 官方最新文檔(v3.6),簡單記錄一些概念竿奏、...
    小魚愛小蝦閱讀 6,043評論 0 5
  • 成功啟動MongoDB后袄简,再打開一個命令行窗口輸入mongo,就可以進(jìn)行數(shù)據(jù)庫的一些操作泛啸。 輸入help可以看到基...
    你本來就很牛閱讀 28,596評論 0 3
  • 安裝 MongoDB Windowns绿语、Ubuntu17.10 下安裝 MongoDB教程在此 MongoDB 幫...
    Kangvcar閱讀 2,089評論 0 13
  • 一帶一路給大家出行帶來了很多不便,天安門周邊,甚至通往長安街的各個路口汞舱,都會不定時戒嚴(yán)伍纫,但會議期間的帝都還是比平時...
    劼希閱讀 490評論 2 2