02_MongoDB数据操作

作者: pzmpzm | 来源:发表于2017-11-22 20:08 被阅读0次

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}})

相关文章

  • 02_MongoDB数据操作

    cls 清屏 首先打开cmd中 首先打上 mongo 1、show dbs 查看所有数据库 2、show coll...

  • 02_mongoDB查询

    查询 指定返回的键db.[documentName].find ({条件},{键指定})数据准备->persons...

  • (七).Linux下使用mysql-3(表操作)

    数据操作->插入数据 方法一: 方法二: 例如: 数据操作->更新数据 例如: 数据操作->删除数据 例如: 修改...

  • Redis-基础知识

    1、数据类型 (1)基本数据类型 (2) String 常见操作 单数据操作与多数据操作:多数据操作时mset理论...

  • MySQL数据库管理使用

    RPM安装MySQL 启动数据库操作: 重启数据库操作: 停止数据库操作: 查看数据库状态: 登录数据库操作: 退...

  • 数据库初探(七)-Data Manipulation Langu

    DML:数据操作语言 数据操作在SQL主要是操作表中的数据,使用DML可以完成以下三个操作:插入数据修改数据删除数...

  • Oracle常用操作指南

    目录 用户操作语句 表空间操作语句 数据文件操作语句 数据表操作语句 数据库属性操作语句 1. 用户操作语句 查看...

  • Java基础-一些流其他的流

    一.数据操作流(操作基本类型数据的流) 可以操作基本数据类型的数据 DataInputStreamDataOutp...

  • MySQL之操作数据库

    二、操作数据库 操作数据库——>操作数据库中的表——>操作数据库中表的数据注:所有语句都要用;结尾。 1.操作数据...

  • MySQL数据库操作

    数据库 MySQL 基本操作 数据库操作 表的操作 数据操作 字符集编码 数据类型(列类型) 列属性(列约束) 建...

网友评论

    本文标题:02_MongoDB数据操作

    本文链接:https://www.haomeiwen.com/subject/eibwhxtx.html