mongodb操作

mongodb是屬於nosql,在介紹之前還是要mark一下RDBMS和NOSQL的區別。RDBMS主要存儲結構化的數據,數據主要存儲在表中,要查詢數據必須使用結構化的SQL語句,有着嚴格的一致性要求。而NOSQL是存儲非結構化的,非預知的數據,數據量大,數據結構多樣,數據是以鍵值對的方式存儲,並且是最終一致性,也就是非嚴格一致性。從查詢效率上比較,NOSQL要遠遠大於RDBMS。

學習的時候下載一個NosqlBooster For Mongo桌面工具,使用比較方便,工具長這樣:

創建索引
db.getCollection("students").createIndex({ "stuedentId": 1 }, { "unique": true });
db.students.createIndex({ "stuedentCode": 1 }, { "unique": true });
插入數據
db.students.insert({stuedentId:100000,stuedentCode:100608066,studentName:'張三'});
查找所有
db.students.find({});
再插入一條數據
db.students.insert({stuedentId:100001,stuedentCode:100608067,studentName:'嚴四'});
條件查詢
db.students.find({studentName:'嚴四'});
or查詢
db.students.find({
    "$or":[{studentName:'張三'},{studentName:'嚴四'}]
});
查詢數量
db.students.count();
查詢存在改字段的數據
db.students.find({"studentName":{$exists:true}});
and查詢
db.students.find({
    "$and":[{"studentName":'張三'},{"male":"男"}]
})
條件更新
db.students.update({"studentName":'張三'},{$set:{"male":'男'}},true,true);
更新所有,第一個Boolean是不存在是否更新,第二個Boolean是是否更新所有記錄
db.students.update({},{$set:{age:30}},true,true);
條件更新
db.students.update({studentName:'嚴四'},{$set:{age:31}},true,true);
大於查詢
db.students.find({age:{$gt:30}});
大於等於查詢
db.students.find({age:{$gte:30}});

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章