cls 清屏
首先打开cmd中 首先打上 mongo
1、show dbs 查看所有数据库
2、show collections 查看所有的表
3、use pzm 创建数据库,当存在时use 进入这个数据库
创建数据库的时候 必须同时创建表
4、数据库中不能直接插入数据,只能往集合(collections)中插入数据。不需要创建集合,只需要写点语法: 因为数据库无user,则系统自动把它设置为集合
db.user.insert({"name":pzm,"age":20}) // 插入表(集合)和数据
5、删除数据库 db.dropDatabase();
查找数据:
1、查询所有记录 (userInfo)为表名
db.userInfo.find(); 相当于 select*from userInfo
2、查询去掉后的当前聚集集合中的某列的重复数据
db.userInfo.distinct("name")
会过滤掉 name中相同的数据
相当于 select distinct name from userInfo
3、查询 age = 22 的记录
db.userInfo.find({"age":22});
相当于 select* from userInfo where age =22;
4、查询 age > 22 的记录
db.userInfo.find({"age" : { $gt:22 } } );
相当于 select * from userInfo where age > 22;
5、查询 age < 22 的记录
db.userInfo.find( "age" : {$lt : 22} );
相当于 select * from userInfo where age < 22
6、查询 age >= 25的记录
db.userInfo.find("age" : { $gte : 25});
相当于 select * from userIndfo where age > = 25
7、 age < = 25 同上 $lte:25
8、 查询 age > 23 并且 age < =26
db.userInfo.find({"age": { $gte : 23, $lte : 26} });
9、模糊查询 name中有pzm的数据 / /
db.userInfo.find({ "name": /pzm/})
相当于 %%
select * from userInfo where name like '%pzm%';
10、查询name中以 pzm 开头的
db.userInfo.find("name" : /^pzm/)
同 select *from userInfo where name 'pzm%';
11、 结尾 /pzm$/
12、查询 指定列 name 、age ()
db.userInfo.find({},{ "name": 1 }) // 只会显示name这列,不会显示age的数据
select name from userInfo ;
db.userInfo.find({},{"name":1,"age":1}) //只会显示 name 和age 的数据
select name,age from userInfo;
13、查询指定列 name,age 并且 age >=25(注意大括号的范围)
db.userInfo.find({" age" : { $gte : 25}},{"name":1,"age":1})
select name,age from userInfo where age >= 25;
14、按年龄排序 升序sort({"age":1}) 降序sort({"age":-1})
db.userInfo.find().sort({"age":1})
15、 查询 name = pzm ,age =18的数据
db.userInfo.find({"name": "pzm","age" : 18});
同: select * from userInfo where name = "pzm" and age = "18";
16、 查询前五条数据
db.userInfo.find().limit(5);
同: selecttop 5 *from userInfo
17、 查询10条以后的数据
db.userInfp.find().skip(10);
select * from userInfo where id not in(selecttop 10*from userInfo);
18、
db.userInfo.limit(5).skip(5);
第一页:db.userinfo.find().limit(5).skip(0)
第二页:db.userinfo.find().limit(5).skip(5)
第三页:db.userinfo.find().limit(5).skip(10)
ok,实际上limit就是pageSize,skip则是忽略前多少条
db.userInfo.find().limit(pageSize).skip((pageNum -1)*pageSize)
误区:别以为limit表示查询多少条就把第二页写成
db.userinfo.find().limit(10).skip(5) --我要查询10条忽略前五条那不就是第二页了吗,大错特错。实际上是先忽略后,再查询多少条,跟Mongodb自身函数优先级有关吧。
19、 查询第一条数据
db.userInfo.findOne();
selecttop 1 * from userInfo;
db.userInfo.find().limit(1);
20、查询某个结果集的数量
db.userInfo.find({"age" : 24}).count();
select count(*) from userInfo where age >= 20;
修改数据:
1、查找名字叫做小明的,把年龄更改为16岁:
db.userInfo.update({"name":"小明"},{$set:{"age":18}})
网友评论