/*
mongodb只支持64位的操作系统
默认端口是:27017
数据库之间是独立,和mysql是不一样的
mongo会给每个数据给个id,不会重复,保证了数据的唯一性
*/
1.启动MOngoDB数据库指令:
mongod --dbpath 输入路径
2.cmd连接
mongo
3.查看:
show dbs
4.使用数据库,创建 数据库
use kuangjia (还没创建成功) 创建 kuangjia是随便起的名字+
如果真的想把这个数据库创建成功,那么必须插入一个数据
5.创建数据
db.teacher.insert({'name':'kaidi','age':'32'})
注意:数据的使用,需要使用键值对的形式,这个时候才多了这个kuangjia数据库
6.使用
use kuangjia
7.显示当前的数据集合
show collections
二:查看数据
1.查询所有记录:
db.teacher.find()
相当于mysql语句的select * from student
2.查询age = 20的记录
db.teacher.find({'age':20});
相当于mysql语句 select * from student where age = 20;
3.查询age>22的记录
db.teacher.find({'age':{$gt:22}});
相当于mysql语句的select * from student where age>22;
4.查询age<22的记录
db.teacher.find({'age':{$lt:22}});
相当于mysql语句d1select * from student where age<22
5.查询 age>=25的记录
db.teacher.find({'age':{$gte:25}})
相当于mysql select * from student where age>=25
6.查询 age<=25的记录
db.teacher.find({'age':{$lte:25}});
相当于mysql select * from student where age<=25
7.查询 age>=23 并且age<=26的记录
db.teacher.find({'age':{$gte:23,$lte:26}})
相当于mysql语句中的 select * from student where age<=23 and age>=26
8.查询name中包含mongo的数据 模糊查询(//相当于%%)
db.student.find({'name':/mongo/})
select * from student where name like '%mongo%'
9.查询name中以mongo开头的数据
db.student.find({'name':/^mongo/})
select * from student where name like 'mongo%
';
10.查询指定列的数据 name age
db.student.find({},{'name':1,'age':1}) 第一个{}相当于表判断
相当于 select name,age from student student
11.查询指定列 name age并且age>25
db.student.find({'age':{$gt:25}},{name:1,age:1})
想当于select name,age from student where age>25
12.按照年龄1升序,-1降序
db.student.find().sort({'age':1}); //升序
db.student.find().sort({'age':-1});//降序
13.查询name = 'zhangsan',age=22的数据
db.student.find({name:'zhangsan','age':22})
select * from student where name='zhangsan' and age=22;
14.查询前五条数据
db.student.find().limit(5)
相当于select top 5 * from student
15.查询10条以后的数据
db.student.find().skip(10)
相当于select * from student where id not in(select top 10 * from student)
id not in(select top 10 * from student) :id不在前10条
16.查询5-10之间的数据
db.student.find().limit(10).skip(5);
17.or与查询 ,查询年龄22岁或者23岁
db.student.find({$or:[{'age':22},{'age':23}]})
select * from student where age=22 or age =23;
18.findOne()查询第一条语句
db.student.findOne()
相当于 select top 1 * from student
db.student.find().limit(1)
19.查询某个结果集的记录条数,统计数量
db.student.find({'age':{'$gte:25}}).count()
相当于 select count(*) from student where age>=25;
三:修改数据 $set,如果没有$set会覆盖所有的值,如果没有该值会添加上去
查找名字为小明的,把年龄改为 16岁
db.student.update({'name':'小明'},{$set:{'age':16}}); 第一个对象是查找的条件,第二个对象是修改的值
查找数学成绩70,把年龄改为33
db.student.update({'score.shuxue':70},{$set:{'age':33}})
2.更改所有匹配的项目的值
db.student.update({'name':'liquan'},{$set:{'age':16}},{multi:true})
四:删除数据 remove
db.student.remove({'name':'liurui'});
db.student.remove({'age':23});
五。mongoDB的增删改查: insert remove update find
db.dropDatabase()删除数据库
db.student.drop();//删除表