MongoDB自带了一个javascript shell,可以从命令行与MongoDB交互。
常用的命令如下:
1.查询数据库:>show dbs
2.切换数据库,如果没有指定的数据库则创建数据库:>use mongoTestDb
3.查询当前数据库中的table(聚集集合Collection):>show collections
4.创建聚集集合:>db.createCollection('myCollection')
5.查询聚集集合中的记录个数:>db.myCollection.count()
6.查询命令的使用方式:>db.myCollection.help() 结果如下图:
7.插入数据:>db.myCollection.insert({'name':"jjyy",'age':23,'salary':1000000});
8.查询age=23的数据:>db.myCollection.find({'age':23})
9.查询salary>100的数据:>db.myCollection.find({salary:{$gt:100}});
10.查询age<30并且salary>100的数据:>db.myCollection.find({age:{$lt:30}},{salary:{$gt:100}})
11.查询salary<40或salary>200的数据:>db.myCollection.find({$or:[{salary:{$lt:40}},{salary:{$gt:200}}]});
12.查询指定列的数据:db.myCollection.find({},{age:1,salary:1}) [说明:1表示此列的意思,也可以用true]
13.查询name中包含‘jj’的数据:>db.myCollection.find({name:/jj/})
14.查询name是以a开头的数据:>db.myCollection.find({name:/^a/})
15.查询age列数据,并去掉重复数据:>db.myCollection.distinct('age')
16.查询前10条数据:>db.myCollection.find().limit(10)
17.查询1条以后的所有数据:>db.myCollection.find().skip(1)
18.查询第一条数据:>db.myCollection.findOne();
19.查询记录按照salary升序排序:db.myCollection.find().sort({salary:1})
20.根据name修改age:>db.user.update({name:'jjyy'},{$set:{age:22}},false,true)
[语法:] db.collection.update(criteria,objNew,upsert,multi)
criteria:update的查询条件,类似sql 的update查询内的where后面的条件
objNew:update对象和更新的操作符号,类似sql的update中的set所带的内容
upsert:如果不存在update的记录,是否插入objNew,true为插入,默认是false
multi:mongodb默认是false,只更新找到的第一条记录,如果为true,就把所有的记录都更新
21.将指定记录的age增加2:>db.myCollection.update({name:'jjyy'},{$inc:{age:5}},false,true)
22.删除数据:>db.myCollection.remove({name:'jjyy'})
23.重命名:>db.myCollection.renameCollection('temp_test')
24.删除数据库:>db.dropDatabase()