2.非关系型数据库(Nosql)之mongodb:mongodb显示所有数据库,使用数据库,集合创建(显示和隐式创建),集合查询,初步数据的增删改查,分页

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
简介:  1代开一个cmd窗口,当作mongodb客户端,执行以下命令: mongo localhost:27017 2查看所有的数据库: > show dbs; admin (empty) local 0.078GB 3 db命令,查看当前窗口在那个数据库下面(test数据库没有任何数据,在内存里面):


1代开一个cmd窗口,当作mongodb客户端,执行以下命令:

mongo localhost:27017

2查看所有的数据库:

> show dbs;

admin (empty)

local 0.078GB

3 db命令,查看当前窗口在那个数据库下面(test数据库没有任何数据,在内存里面):

4创建集合

A 显示创建

db.createCollection(“collectionName”);

> db.createCollection("c1")

{ "ok" : 1 }

B 隐式创建

> db.c2.insert({name:"zhangsan",age:31})

WriteResult({ "nInserted" : 1 });

显示集合

show collections;

5 CRUD

A添加

db.collectionName.insert({})

> db.c2.insert({name:"zhangsan",age:31})

WriteResult({ "nInserted" : 1 })

> show collections;

c1

c2

system.indexes

> var i = 1+2;

> i

3

> for(var i = 1 ; i <= 10000;i++){

... db.c1.insert({name:'toto',age:24})

... }

WriteResult({ "nInserted" : 1 })

清屏命令:cls

B删除

db.collectionName.remove();

> db.c4.insert({name:"zhangsan",age:20});

WriteResult({ "nInserted" : 1 })

> db.c4.insert({name:"lisi",age:24});

WriteResult({ "nInserted" : 1 })

db.c4.find();

> db.c4.remove({name:"zhangsan"});

WriteResult({ "nRemoved" : 1 })

> db.c4.find();

{ "_id" : ObjectId("543e0b6ae2c90313035e7ce3"), "name" : "lisi", "age" : 24 }

C查询

A db.collectionName.find({条件});

egdb.c3.find();

再如:

> db.c4.find({name:"lisi"});

{ "_id" : ObjectId("543e0b6ae2c90313035e7ce3"), "name" : "lisi", "age" : 24 }

B查找集合中的第一条数据

db.collectionName.findOne();

eg

> db.c4.find();

{ "_id" : ObjectId("543e0b6ae2c90313035e7ce3"), "name" : "lisi", "age" : 24 }

{ "_id" : ObjectId("543e0d96e2c90313035e7ce4"), "name" : "wangwu", "age" : 20 }

{ "_id" : ObjectId("543e0da0e2c90313035e7ce5"), "name" : "zhaoliu", "age" : 25 }

{ "_id" : ObjectId("543e0da8e2c90313035e7ce6"), "name" : "tianqi", "age" : 25 }

> db.c4.findOne();

{

       "_id" : ObjectId("543e0b6ae2c90313035e7ce3"),

       "name" : "lisi",

       "age" : 24

}

注意:_id每个表都有,是mongodb自动维护的。

C查询集合中的文档,返回某些特定的键值

除了查询表达式以外,Mongodb还支持一些额外的参数选项,例如,我们可能仅仅只想返回某些特定的字段值:

> db.c4.find({name:"wangwu"},{name:1});

{ "_id" : ObjectId("543e0d96e2c90313035e7ce4"), "name" : "wangwu" }

D查询显示问题

> for(var i = 1; i<=30;i++){

... db.c4.insert({name:"tuzuoquan",age:i});

... }

WriteResult({ "nInserted" : 1 })

查询:

> db.c4.find();

{ "_id" : ObjectId("543e0b6ae2c90313035e7ce3"), "name" : "lisi", "age" : 24 }

{ "_id" : ObjectId("543e0d96e2c90313035e7ce4"), "name" : "wangwu", "age" : 20 }

{ "_id" : ObjectId("543e0da0e2c90313035e7ce5"), "name" : "zhaoliu", "age" : 25 }

{ "_id" : ObjectId("543e0da8e2c90313035e7ce6"), "name" : "tianqi", "age" : 25 }

{ "_id" : ObjectId("543e104fe2c90313035e7ce7"), "name" : "tuzuoquan", "age" : 1 }

{ "_id" : ObjectId("543e104fe2c90313035e7ce8"), "name" : "tuzuoquan", "age" : 2 }

{ "_id" : ObjectId("543e104fe2c90313035e7ce9"), "name" : "tuzuoquan", "age" : 3 }

{ "_id" : ObjectId("543e104fe2c90313035e7cea"), "name" : "tuzuoquan", "age" : 4 }

{ "_id" : ObjectId("543e104fe2c90313035e7ceb"), "name" : "tuzuoquan", "age" : 5 }

{ "_id" : ObjectId("543e104fe2c90313035e7cec"), "name" : "tuzuoquan", "age" : 6 }

{ "_id" : ObjectId("543e104fe2c90313035e7ced"), "name" : "tuzuoquan", "age" : 7 }

{ "_id" : ObjectId("543e104fe2c90313035e7cee"), "name" : "tuzuoquan", "age" : 8 }

{ "_id" : ObjectId("543e104fe2c90313035e7cef"), "name" : "tuzuoquan", "age" : 9 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf0"), "name" : "tuzuoquan", "age" : 10 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf1"), "name" : "tuzuoquan", "age" : 11 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf2"), "name" : "tuzuoquan", "age" : 12 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf3"), "name" : "tuzuoquan", "age" : 13 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf4"), "name" : "tuzuoquan", "age" : 14 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf5"), "name" : "tuzuoquan", "age" : 15 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf6"), "name" : "tuzuoquan", "age" : 16 }

Type "it" for more

> it

{ "_id" : ObjectId("543e104fe2c90313035e7cf7"), "name" : "tuzuoquan", "age" : 17 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf8"), "name" : "tuzuoquan", "age" : 18 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf9"), "name" : "tuzuoquan", "age" : 19 }

{ "_id" : ObjectId("543e104fe2c90313035e7cfa"), "name" : "tuzuoquan", "age" : 20 }

{ "_id" : ObjectId("543e104fe2c90313035e7cfb"), "name" : "tuzuoquan", "age" : 21 }

{ "_id" : ObjectId("543e104fe2c90313035e7cfc"), "name" : "tuzuoquan", "age" : 22 }

{ "_id" : ObjectId("543e104fe2c90313035e7cfd"), "name" : "tuzuoquan", "age" : 23 }

{ "_id" : ObjectId("543e104fe2c90313035e7cfe"), "name" : "tuzuoquan", "age" : 24 }

{ "_id" : ObjectId("543e104fe2c90313035e7cff"), "name" : "tuzuoquan", "age" : 25 }

{ "_id" : ObjectId("543e104fe2c90313035e7d00"), "name" : "tuzuoquan", "age" : 26 }

{ "_id" : ObjectId("543e104fe2c90313035e7d01"), "name" : "tuzuoquan", "age" : 27 }

{ "_id" : ObjectId("543e104fe2c90313035e7d02"), "name" : "tuzuoquan", "age" : 28 }

{ "_id" : ObjectId("543e104fe2c90313035e7d03"), "name" : "tuzuoquan", "age" : 29 }

{ "_id" : ObjectId("543e104fe2c90313035e7d04"), "name" : "tuzuoquan", "age" : 30 }

> db.c4.count();

34

>总结:

Mongodb客户端默认一次显示20条记录

 

Eg:显示age大于20个数据:

> db.c4.find({age:{$gt:20}});

{ "_id" : ObjectId("543e0b6ae2c90313035e7ce3"), "name" : "lisi", "age" : 24 }

{ "_id" : ObjectId("543e0da0e2c90313035e7ce5"), "name" : "zhaoliu", "age" : 25 }

{ "_id" : ObjectId("543e0da8e2c90313035e7ce6"), "name" : "tianqi", "age" : 25 }

{ "_id" : ObjectId("543e104fe2c90313035e7cfb"), "name" : "tuzuoquan", "age" : 21 }

{ "_id" : ObjectId("543e104fe2c90313035e7cfc"), "name" : "tuzuoquan", "age" : 22 }

{ "_id" : ObjectId("543e104fe2c90313035e7cfd"), "name" : "tuzuoquan", "age" : 23 }

{ "_id" : ObjectId("543e104fe2c90313035e7cfe"), "name" : "tuzuoquan", "age" : 24 }

{ "_id" : ObjectId("543e104fe2c90313035e7cff"), "name" : "tuzuoquan", "age" : 25 }

{ "_id" : ObjectId("543e104fe2c90313035e7d00"), "name" : "tuzuoquan", "age" : 26 }

{ "_id" : ObjectId("543e104fe2c90313035e7d01"), "name" : "tuzuoquan", "age" : 27 }

{ "_id" : ObjectId("543e104fe2c90313035e7d02"), "name" : "tuzuoquan", "age" : 28 }

{ "_id" : ObjectId("543e104fe2c90313035e7d03"), "name" : "tuzuoquan", "age" : 29 }

{ "_id" : ObjectId("543e104fe2c90313035e7d04"), "name" : "tuzuoquan", "age" : 30 }

 

Eg:显示age >= 25的数据:

db.c4.find({age:{$gte:25}});

> db.c4.find({age:{$gte:25}});

{ "_id" : ObjectId("543e0da0e2c90313035e7ce5"), "name" : "zhaoliu", "age" : 25 }

{ "_id" : ObjectId("543e0da8e2c90313035e7ce6"), "name" : "tianqi", "age" : 25 }

{ "_id" : ObjectId("543e104fe2c90313035e7cff"), "name" : "tuzuoquan", "age" : 25 }

{ "_id" : ObjectId("543e104fe2c90313035e7d00"), "name" : "tuzuoquan", "age" : 26 }

{ "_id" : ObjectId("543e104fe2c90313035e7d01"), "name" : "tuzuoquan", "age" : 27 }

{ "_id" : ObjectId("543e104fe2c90313035e7d02"), "name" : "tuzuoquan", "age" : 28 }

{ "_id" : ObjectId("543e104fe2c90313035e7d03"), "name" : "tuzuoquan", "age" : 29 }

{ "_id" : ObjectId("543e104fe2c90313035e7d04"), "name" : "tuzuoquan", "age" : 30 }

 

Eg:显示age <= 15的数据:

> db.c4.find({age:{$lte:15}});

{ "_id" : ObjectId("543e104fe2c90313035e7ce7"), "name" : "tuzuoquan", "age" : 1 }

{ "_id" : ObjectId("543e104fe2c90313035e7ce8"), "name" : "tuzuoquan", "age" : 2 }

{ "_id" : ObjectId("543e104fe2c90313035e7ce9"), "name" : "tuzuoquan", "age" : 3 }

{ "_id" : ObjectId("543e104fe2c90313035e7cea"), "name" : "tuzuoquan", "age" : 4 }

{ "_id" : ObjectId("543e104fe2c90313035e7ceb"), "name" : "tuzuoquan", "age" : 5 }

{ "_id" : ObjectId("543e104fe2c90313035e7cec"), "name" : "tuzuoquan", "age" : 6 }

{ "_id" : ObjectId("543e104fe2c90313035e7ced"), "name" : "tuzuoquan", "age" : 7 }

{ "_id" : ObjectId("543e104fe2c90313035e7cee"), "name" : "tuzuoquan", "age" : 8 }

{ "_id" : ObjectId("543e104fe2c90313035e7cef"), "name" : "tuzuoquan", "age" : 9 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf0"), "name" : "tuzuoquan", "age" : 10 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf1"), "name" : "tuzuoquan", "age" : 11 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf2"), "name" : "tuzuoquan", "age" : 12 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf3"), "name" : "tuzuoquan", "age" : 13 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf4"), "name" : "tuzuoquan", "age" : 14 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf5"), "name" : "tuzuoquan", "age" : 15 }

 

Eg:显示age不等于 2的数据:

> db.c4.find({age:{$ne:2}});

{ "_id" : ObjectId("543e0b6ae2c90313035e7ce3"), "name" : "lisi", "age" : 24 }

{ "_id" : ObjectId("543e0d96e2c90313035e7ce4"), "name" : "wangwu", "age" : 20 }

{ "_id" : ObjectId("543e0da0e2c90313035e7ce5"), "name" : "zhaoliu", "age" : 25 }

{ "_id" : ObjectId("543e0da8e2c90313035e7ce6"), "name" : "tianqi", "age" : 25 }

{ "_id" : ObjectId("543e104fe2c90313035e7ce7"), "name" : "tuzuoquan", "age" : 1 }

{ "_id" : ObjectId("543e104fe2c90313035e7ce9"), "name" : "tuzuoquan", "age" : 3 }

{ "_id" : ObjectId("543e104fe2c90313035e7cea"), "name" : "tuzuoquan", "age" : 4 }

{ "_id" : ObjectId("543e104fe2c90313035e7ceb"), "name" : "tuzuoquan", "age" : 5 }

{ "_id" : ObjectId("543e104fe2c90313035e7cec"), "name" : "tuzuoquan", "age" : 6 }

{ "_id" : ObjectId("543e104fe2c90313035e7ced"), "name" : "tuzuoquan", "age" : 7 }

{ "_id" : ObjectId("543e104fe2c90313035e7cee"), "name" : "tuzuoquan", "age" : 8 }

{ "_id" : ObjectId("543e104fe2c90313035e7cef"), "name" : "tuzuoquan", "age" : 9 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf0"), "name" : "tuzuoquan", "age" : 10 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf1"), "name" : "tuzuoquan", "age" : 11 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf2"), "name" : "tuzuoquan", "age" : 12 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf3"), "name" : "tuzuoquan", "age" : 13 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf4"), "name" : "tuzuoquan", "age" : 14 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf5"), "name" : "tuzuoquan", "age" : 15 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf6"), "name" : "tuzuoquan", "age" : 16 }

{ "_id" : ObjectId("543e104fe2c90313035e7cf7"), "name" : "tuzuoquan", "age" : 17 }

Type "it" for more

 

> db.c4.find().count();

34

> db.c4.find({age:{$ne:20}}).count();

32

> db.c4.find({age:{$ne:2}}).count();

33

E :分页

db.c4.find().skip(0).limit(10);

> db.c4.find().skip(0).limit(10);

{ "_id" : ObjectId("543e0b6ae2c90313035e7ce3"), "name" : "lisi", "age" : 24 }

{ "_id" : ObjectId("543e0d96e2c90313035e7ce4"), "name" : "wangwu", "age" : 20 }

{ "_id" : ObjectId("543e0da0e2c90313035e7ce5"), "name" : "zhaoliu", "age" : 25 }

{ "_id" : ObjectId("543e0da8e2c90313035e7ce6"), "name" : "tianqi", "age" : 25 }

{ "_id" : ObjectId("543e104fe2c90313035e7ce7"), "name" : "tuzuoquan", "age" : 1 }

{ "_id" : ObjectId("543e104fe2c90313035e7ce8"), "name" : "tuzuoquan", "age" : 2 }

{ "_id" : ObjectId("543e104fe2c90313035e7ce9"), "name" : "tuzuoquan", "age" : 3 }

{ "_id" : ObjectId("543e104fe2c90313035e7cea"), "name" : "tuzuoquan", "age" : 4 }

{ "_id" : ObjectId("543e104fe2c90313035e7ceb"), "name" : "tuzuoquan", "age" : 5 }

{ "_id" : ObjectId("543e104fe2c90313035e7cec"), "name" : "tuzuoquan", "age" : 6 }

Eg:查询第

 

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。 &nbsp; 相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
目录
相关文章
|
2天前
|
SQL 关系型数据库 API
HarmonyOs开发:关系型数据库封装之增删改查
每个方法都预留了多种调用方式,比如使用callback异步回调或者使用Promise异步回调,亦或者同步执行,大家在使用的过程中,可以根据自身业务需要进行选择性调用,也分别暴露了成功和失败的方法,可以针对性的判断在执行的过程中是否执行成功。
37 13
|
5天前
|
存储 Java easyexcel
招行面试:100万级别数据的Excel,如何秒级导入到数据库?
本文由40岁老架构师尼恩撰写,分享了应对招商银行Java后端面试绝命12题的经验。文章详细介绍了如何通过系统化准备,在面试中展示强大的技术实力。针对百万级数据的Excel导入难题,尼恩推荐使用阿里巴巴开源的EasyExcel框架,并结合高性能分片读取、Disruptor队列缓冲和高并发批量写入的架构方案,实现高效的数据处理。此外,文章还提供了完整的代码示例和配置说明,帮助读者快速掌握相关技能。建议读者参考《尼恩Java面试宝典PDF》进行系统化刷题,提升面试竞争力。关注公众号【技术自由圈】可获取更多技术资源和指导。
|
8天前
|
前端开发 JavaScript 数据库
获取数据库中字段的数据作为下拉框选项
获取数据库中字段的数据作为下拉框选项
35 5
|
27天前
|
存储 缓存 网络协议
数据库执行查询请求的过程?
客户端发起TCP连接请求,服务端通过连接器验证主机信息、用户名及密码,验证通过后创建专用进程处理交互。服务端进程缓存以减少创建和销毁线程的开销。后续步骤包括缓存查询(8.0版后移除)、语法解析、查询优化及存储引擎调用,最终返回查询结果。
29 6
|
26天前
|
SQL JavaScript 程序员
数据库LIKE查询屡试不爽?揭秘大多数人都忽视的秘密操作符!
本文分析了因数据库中的不可见空白字符导致的数据查询问题,探讨了问题的成因与特性,并提出了使用 SQL 语句修复问题的有效方案。同时,总结了避免类似问题的经验和注意事项。
30 0
|
2月前
|
JSON JavaScript 关系型数据库
node.js连接GBase 8a 数据库 并进行查询代码示例
node.js连接GBase 8a 数据库 并进行查询代码示例
|
9天前
|
存储 Oracle 关系型数据库
数据库传奇:MySQL创世之父的两千金My、Maria
《数据库传奇:MySQL创世之父的两千金My、Maria》介绍了MySQL的发展历程及其分支MariaDB。MySQL由Michael Widenius等人于1994年创建,现归Oracle所有,广泛应用于阿里巴巴、腾讯等企业。2009年,Widenius因担心Oracle收购影响MySQL的开源性,创建了MariaDB,提供额外功能和改进。维基百科、Google等已逐步替换为MariaDB,以确保更好的性能和社区支持。掌握MariaDB作为备用方案,对未来发展至关重要。
33 3
|
9天前
|
安全 关系型数据库 MySQL
MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!
《MySQL崩溃保险箱:探秘Redo/Undo日志确保数据库安全无忧!》介绍了MySQL中的三种关键日志:二进制日志(Binary Log)、重做日志(Redo Log)和撤销日志(Undo Log)。这些日志确保了数据库的ACID特性,即原子性、一致性、隔离性和持久性。Redo Log记录数据页的物理修改,保证事务持久性;Undo Log记录事务的逆操作,支持回滚和多版本并发控制(MVCC)。文章还详细对比了InnoDB和MyISAM存储引擎在事务支持、锁定机制、并发性等方面的差异,强调了InnoDB在高并发和事务处理中的优势。通过这些机制,MySQL能够在事务执行、崩溃和恢复过程中保持
32 3
|
9天前
|
SQL 关系型数据库 MySQL
数据库灾难应对:MySQL误删除数据的救赎之道,技巧get起来!之binlog
《数据库灾难应对:MySQL误删除数据的救赎之道,技巧get起来!之binlog》介绍了如何利用MySQL的二进制日志(Binlog)恢复误删除的数据。主要内容包括: 1. **启用二进制日志**:在`my.cnf`中配置`log-bin`并重启MySQL服务。 2. **查看二进制日志文件**:使用`SHOW VARIABLES LIKE &#39;log_%&#39;;`和`SHOW MASTER STATUS;`命令获取当前日志文件及位置。 3. **创建数据备份**:确保在恢复前已有备份,以防意外。 4. **导出二进制日志为SQL语句**:使用`mysqlbinlog`
46 2
|
22天前
|
关系型数据库 MySQL 数据库
Python处理数据库:MySQL与SQLite详解 | python小知识
本文详细介绍了如何使用Python操作MySQL和SQLite数据库,包括安装必要的库、连接数据库、执行增删改查等基本操作,适合初学者快速上手。
157 15