MongoDB中聚集集合(collection/coll)相當(dāng)于MySQL中的表
成都創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計(jì)、做網(wǎng)站、德州網(wǎng)絡(luò)推廣、成都微信小程序、德州網(wǎng)絡(luò)營銷、德州企業(yè)策劃、德州品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供德州建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:aaarwkj.com
文檔相當(dāng)于mysql中的每一行數(shù)據(jù)
常用命令
1.獲得幫助命令
db.help() db.表名.help() db.表名.find().help() rs.help()
2.切換/創(chuàng)建數(shù)據(jù)庫
use 數(shù)據(jù)庫名稱 注意:mongoDB的數(shù)據(jù)庫可以先使用,后創(chuàng)建,當(dāng)創(chuàng)建一個(gè)集合(table)時(shí),當(dāng)前數(shù)據(jù)庫會(huì)自動(dòng)創(chuàng)建 例子:有一個(gè)數(shù)據(jù)庫為sutdentdb,要切換到這個(gè)數(shù)據(jù)庫則: use studentdb
3.查詢所有數(shù)據(jù)庫
show dbs 例子: > show dbs admin 0.078GB local 0.078GB studentdb 0.078GB test 0.078GB
4.刪除當(dāng)前使用的數(shù)據(jù)庫
db.dropDatabase() 例子: > use test switched to db test > db.dropDatabase() { "dropped" : "test", "ok" : 1 } > show dbs admin 0.078GB local 0.078GB studentdb 0.078GB
5.查看當(dāng)前使用的數(shù)據(jù)庫
db.getName() 例子: > use studentdb switched to db studentdb > db.getName() studentdb
6.顯示當(dāng)前db狀態(tài)
db.stats()
7.當(dāng)前db版本
> db.version() 2.6.12
8.查看數(shù)據(jù)庫中有多少個(gè)表(聚集集合)
show collections
查看聚集集合(表)的基本信息
查看幫助
db.表名.help()
2.查詢當(dāng)前集合中的數(shù)據(jù)條數(shù)
db.表名.count()
3.查看數(shù)據(jù)空間大小
db.表名.dataSize()
4.當(dāng)前聚集集合所在的數(shù)據(jù)庫
db.表名.getDB()
5.得到當(dāng)前聚集集合的狀態(tài)
db.表名.stats()
6.得到聚集集合的總大小
db.表名.totalSize()
7.查看聚集集合存儲(chǔ)空間大小
db.表名.storageSize()
8.查看Shard版本信息
db.表名.getShardVersion()
9.給聚集集合重命名
db.表名.renameCollection("新名字")
10.刪除當(dāng)前聚集集合
db.表名.drop()
查詢操作
1.查詢所有記錄
db.表名.find() 相當(dāng)于:select* from 表名; 默認(rèn)每頁顯示20條記錄,當(dāng)顯示不下的情況下,可以用it迭代命令查詢下一頁數(shù)據(jù)。注意:鍵入it命令不能帶“;”
2.查詢結(jié)果會(huì)過濾掉某一字段中重復(fù)的數(shù)據(jù),然后顯示出來
db.表名.distinct("字段名") 例子: > db.student.distinct("Age") [ 20, 40 ] 注:將student表中Age字段中的數(shù)據(jù)去重后,顯示出來
3.查詢age=22的數(shù)據(jù)
db.表名.find({"age":22}) 例子: > db.student.find({"age":20}) { "_id" : ObjectId("5740dcb29bc83e10802f1cd8"), "name" : "kity", "age" : 20, "gender" : "womand" }
4.查詢age大于22的數(shù)據(jù)
大于號(hào) $gt > db.student.find({"age":{$gt:22}}) { "_id" : ObjectId("5740c1419bc83e10802f1cd6"), "name" : "Tom", "age" : 23, "gender" : "male" } { "_id" : ObjectId("5740dc369bc83e10802f1cd7"), "name" : "jerry", "age" : 30, "gender" : "male", "guoji" : "china" } { "_id" : ObjectId("5742263773344acd707888ba"), "name" : "Gu Zenghui", "age" : 25, "gender" : "male", "Course" : "Linux" }
5.查詢age大于等于25的數(shù)據(jù)
大于等于 $gte db.student1.find({age:{$gte:25}})
6.查詢age小于25的數(shù)據(jù)
小于 $lt db.student1.find({age:{$lt:25}})
7.查詢age小于等于25的數(shù)據(jù)
小于等于 $lte db.student1.find({age:{$lte:25}})
8.查詢age大于等于30且小于等于35之間的數(shù)據(jù)
db.student1.find({age:{$gte:30,$lte:35}})
總結(jié):
大于 $gt
大于等于 $gte
小于 $lt
小于等于 $lte
9.查詢name中包含student的數(shù)據(jù)
> db.student1.find({name:/student/}).count() 9916 注:文檔中只要有student,就會(huì)被顯示出來
10.查詢name中以G開頭的數(shù)據(jù)
db.student.find({name:/^G/})
11.輸出student表中name和age這兩列
> db.student.find({},{name:1,age:1}) { "_id" : ObjectId("5740c1419bc83e10802f1cd6"), "name" : "Tom", "age" : 23 } { "_id" : ObjectId("5740dc369bc83e10802f1cd7"), "name" : "jerry", "age" : 30 } { "_id" : ObjectId("5740dcb29bc83e10802f1cd8"), "name" : "kity", "age" : 20 } { "_id" : ObjectId("57418fd97267e7d85d8baf3a"), "name" : "Ou yangfeng" } { "_id" : ObjectId("57418ff77267e7d85d8baf3b"), "name" : "Yang Guo" } { "_id" : ObjectId("5741901e7267e7d85d8baf3c"), "name" : "Guo jing" } { "_id" : ObjectId("5742263773344acd707888ba"), "name" : "Gu Zenghui", "age" : 25 }
12.輸出student表中name和age這兩列,并指定age>20
> db.student.find({age:{$gt:20}},{name:1,age:1}) { "_id" : ObjectId("5740c1419bc83e10802f1cd6"), "name" : "Tom", "age" : 23 } { "_id" : ObjectId("5740dc369bc83e10802f1cd7"), "name" : "jerry", "age" : 30 } { "_id" : ObjectId("5742263773344acd707888ba"), "name" : "Gu Zenghui", "age" : 25 }
13.按年齡排序
升序:db.student.find().sort({age:1}) 降序:db.student.find().sort({age:-1})
14.查詢name為jerry且年齡為30的數(shù)據(jù)
db.student.find({name:"jerry",age:30})
15.查詢前5條數(shù)據(jù)
db.student.find().limit(5)
16.查詢5條以后數(shù)據(jù)
db.student.find().skip(5)
17.查詢?cè)诘诙械降谖逍兄g的數(shù)據(jù)
db.student.find().limit(2).skip(5)
18.or 查詢年齡為20或25的數(shù)據(jù)
db.student.find({$or:[{age:20},{age:25}]}) { "_id" : ObjectId("5740dcb29bc83e10802f1cd8"), "name" : "kity", "age" : 20, "gender" : "womand" } { "_id" : ObjectId("5742263773344acd707888ba"), "name" : "Gu Zenghui", "age" : 25, "gender" : "male", "Course" : "Linux" }
19.查詢第一條數(shù)據(jù)
db.student.findOne()
20.統(tǒng)計(jì) 使用count()函數(shù)
索引
1.創(chuàng)建索引
> db.student.ensureIndex({name:1}) { "createdCollectionAutomatically" : false, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 } > db.student.getIndexes() //查看索引 [ { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "studentdb.student" }, { "v" : 1, "key" : { "name" : 1 }, "name" : "name_1", "ns" : "studentdb.student" } ] > db.student.ensureIndex({name:1,age:1}) { "createdCollectionAutomatically" : false, "numIndexesBefore" : 2, "numIndexesAfter" : 3, "ok" : 1 } > db.student.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "studentdb.student" }, { "v" : 1, "key" : { "name" : 1 }, "name" : "name_1", "ns" : "studentdb.student" }, { "v" : 1, "key" : { "name" : 1, "age" : 1 }, "name" : "name_1_age_1", "ns" : "studentdb.student" } ] > db.student.ensureIndex({name:1,age:-11}) { "createdCollectionAutomatically" : false, "numIndexesBefore" : 3, "numIndexesAfter" : 4, "ok" : 1 } > db.student.getIndexes() [ { "v" : 1, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "studentdb.student" }, { "v" : 1, "key" : { "name" : 1 }, "name" : "name_1", "ns" : "studentdb.student" }, { "v" : 1, "key" : { "name" : 1, "age" : 1 }, "name" : "name_1_age_1", "ns" : "studentdb.student" }, { "v" : 1, "key" : { "name" : 1, "age" : -11 }, "name" : "name_1_age_-11", "ns" : "studentdb.student" } ]
網(wǎng)站名稱:mongoDB數(shù)據(jù)庫基本操作
文章源于:http://aaarwkj.com/article34/iggose.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、搜索引擎優(yōu)化、品牌網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)公司、用戶體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)