一、数据库使用

  1.使用mongodb服务,必须先开启服务,开启服务使用 mongod --dbpath D:mongdb    (D:mongdb  自己所创建数据库的路径, 在cmd窗口中输入)   

       2.管理mongodb数据库,mongo (必须新建一个新的cmd窗口输入,之前打开的cmd窗口不能关闭)

              **  cls  清屏命令

二、创建数据库

     1.使用数据库、创建数据库

     use student    如果真的想把这个数据库创建成功,那么必须插入一个数据  数据库中不能直接插入数据,只能往集合(collections)中插入数据,不需要专门创建集合,只需要写点语法插入数据就会创建集合

db.student.insert({"name":"xiaoming"}); //插入数据
 show collections  就能看到刚才创建的集合(student)

   2.删除当前所在的数据库

    db.dropDatabase();

    删除集合语法  db.collection_name.drop

    db.student.drop()   

三、插入数据

db.student.insert({"name":"xiaoming"}); //插入数据

四、查找数据

 1.查询所有记录

   db.student.find()    

  2.查询去掉后的当前聚集集合中的某列的重复数据

  db.student.disnct("name")              //会过滤掉相同的数据,只显示一条

java mongodb 做为数仓 mongodb操作数据库_数据

3.查询age="25"的记录

db.sutdent.find({"age":"25"})     //只查询出一条数据

java mongodb 做为数仓 mongodb操作数据库_数据库_02

4.查询age>22的记录

db.student.find({age:{$gt:22}})

5.查询age<22的记录

db.student.find({age:{$lt:22}})

6.查询age>=25的记录

db.student.find({"age":{$gte:25}})

7.查询age<=25的记录

db.student.find({"age":{$lte:25}})

8.查询age>=23 并且age<=26

db.student.find({age:{$gte:23,$lte:26}})

9.查询name中包含moongo的数据    模糊查询用于搜索

db.student.find({name:/mongo/})

10.查询name中以mongo开头的

db.student.find({name:/^mongo/})

11.查询指定列name、age数据

db.sutdent.find({},{name:1.age:1})

12.查询指定列name、age数据,age>25

db.student.fiind({age:{$gt:25}},{name:1,age:1})

13.按照年龄排序   1升序   -1降序

db.student.find().sort({age:1})    按年龄升序排序
db.studnet.find().sort({age:-1})   按年龄降序排序

14.查询name=zhangsan,age=22的数据

db.student.find({'name':'zhangsan','age':'22'})

15.查询前5条数据

db.student.find().limit(5)

16.查询10条以后的数据

db.student.find().skip(10);

17.查询在5-10条之间的数据

db.student.find().limit(10).skip(5);   //可用于分页 ,limit是pageSize,skip是第几页 *(乘以)pageSize

18. or与查询

db.student.find({$or:[{age:22},{age:25}]})   查询age22或者25的数据

19.查询第一条数据  findOne

db.student.findOne()

20.查询某个结果集的记录条数

db.student.find({age:{$gte:25}}).count()    查询age大于25的数据

如果要返回限制之后的记录数量,要使用 count(true)或者 count(非 0) db.users.find().skip(10).limit(5).count(true);

四、修改数据

1.db.student.update({"name":"小明"},{$set:{"age":16}});              查找名字叫做小明的,把年龄更改为 16 岁:
2. db.student.update({"score.shuxue":70},{$set:{"age":33}});    查找数学成绩是 70,把年龄更改为 33 岁:
3. db.student.update({"sex":"男"},{$set:{"age":33}},{multi: true});    更改所有匹配项目:"
4. db.student.update({"name":"小明"},{"name":"大明","age":16});  完整替换,不出现$set 关键字了
5.db.users.update({name: 'Lisi'}, {$inc: {age: 50}}, false, true); 相当于:update users set age = age + 50 where name = ‘Lisi’;
6.db.users.update({name: 'Lisi'}, {$inc: {age: 50}, $set: {name: 'hoho'}}, false, true); 相当于:update users set age = age + 50, name = ‘hoho’ where name = ‘Lisi’;

五、删除数据

db.collectionsNames.remove( { "borough": "Manhattan" } )     删除集合
db.users.remove({age: 132});