標籤:mongodb nosql資料庫 資料庫 nosql 大資料
MongoDB基本概念和常用命令Mongo DB 是目前在IT行業非常流行的一種非關係型資料庫(NoSql),其靈活的資料存放區方式備受當前IT從業人員的青睞。Mongo DB很好的實現了物件導向的思想(OO思想),在Mongo DB中 每一條記錄都是一個Document對象。Mongo DB最大的優勢在於所有的資料持久操作都無需開發人員手動編寫SQL語句,直接調用方法就可以輕鬆的實現CRUD操作。NoSQL資料庫與傳統的關係型資料庫相比,它具有操作簡單、完全免費、源碼公開、隨時下載等特點,並可以用於各種商業目的。這使NoSQL產品廣泛應用於各種大型門戶網站和專業網站,大大降低了運營成本。2010年,隨著互連網Web2.0網站的興起,NoSQL在國內掀起一陣熱潮,其中風頭最勁的莫過於MongoDB了。越來越多的業界公司已經將MongoDB投入實際的生產環境,很多創業團隊也將MongoDB作為自己的首選資料庫,創造出非常之多的移動互連網應用。MongoDB的文檔模型自由靈活,可以讓你在開發過程中暢順無比。對於大資料量、高並發、弱事務的互連網應用,MongoDB可以應對自如。MongoDB內建的水平擴充機制提供了從百萬到十億層級的資料量處理能力,完全可以滿足Web2.0和移動互連網的資料存放區需求,其開箱即用的特性也大大降低了中小型網站的營運成本。至於下載和安裝我這裡就不講解了,我來說一下MonboDB資料庫的常用命令。
collection相當於資料表。1.添加:db.things.save({"name":1));db.things.insert({"name":1});
2.查詢: 查詢合格全部 db.things.find(); 返回的資料只顯示name列db.things.find(null,{name:1})查詢第一個合格db.things.findOne();
條件查詢並迴圈輸出 db.things.find({x:4}).foreach(printjson);
limit限制: db.things.find().limit(3);
3.修改: db.things.update({name:"mongo"},{$set:{name:"mongo_new"}}) ;
4.刪除: db.things.remove({name:"mongo_new"});
5.條件操作符
db.collection.find({"field":{$gt:value}});
$gt 大於
$it 小於
$gte 大於等於
$ite 小於等於
$all 匹配所有 db.users.find({age:{$all:[6,8]}});
$exists 判斷欄位是否存在 查詢所有存在age欄位的記錄 :db.users.find({age:{$exists:true}});
$mod 模數運算 db.student.find({age:{$mod:[10,1]}});
$ne 不等於 db.things.find({x:{$ne:3}});
$in 包含 db.things.find({x:{$in:[2,4,6]}});
$nin 不包含
$size 數組元素個數 db.users.find({favorite_number:{$size:2}});
6.正則表達式匹配 查詢不匹配name=B*帶頭的記錄 db.users.find({name:{$not:/^B.*/}});
7.排序: db.users.find().sort({age:1});//asc
db.users.find().sort({age:-1});//desc
MongoDB基本概念和常用命令