MongoDB 数据库创建、删除、表(集合) 创建删除、数据的增、删、改、查

一、 连接数据库

1、连接数据库
在这里插入图片描述
清屏命令:cls
查看所有数据库列表:show dbs

二、 创建数据库、查看、删除数据库

在这里插入图片描述
1、使用数据库、创建数据库 use itying 如果真的想把这个数据库创建成功,那么必须插入一个数据。

数据库中不能直接插入数据,只能往集合(collections)中插入数据。

下面命令表示给 itying 数据库的 user 表中插入数据。

 db.user.insert({"name":"xiaoming"});

在这里插入图片描述
在这里插入图片描述
2、查看数据库

 show dbs 

在这里插入图片描述

3、显示当前的数据集合(mysql 中叫表)

show collections

在这里插入图片描述

4、删除集合,删除指定的集合 删除表 删除集合
db.COLLECTION_NAME.drop()


db.user.drop() 

5、删除数据库,删除当前所在的数据库

 db.dropDatabase();

在这里插入图片描述

三、 插入(增加)数据

插入数据,随着数据的插入,数据库创建成功了,集合也创建成功了。
db.表名.insert({"name":"zhangsan","age":20});

四、 查找数据

1、查询所有记录

 db.user.find(); 相当于:select* from user; 

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

db.user.distinct("name"); // 会过滤掉 name 中的相同数据 
相当于:select distict name from user; 

3、查询 age = 22 的记录

db.user.find({"age": 22}); 
相当于: select * from user where age = 22;

在这里插入图片描述

4、查询 age > 22 的记录

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

在这里插入图片描述

相当于:select * from user where age >22;

5、查询 age < 22 的记录

db.user.find({age: {$lt: 22}}); 
相当于:select * from user where age <22;

在这里插入图片描述

6、查询 age >= 25 的记录

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

相当于:select * from user where age >= 25;

7、查询 age <= 25 的记录

db.user.find({age: {$lte: 25}});

在这里插入图片描述

8、查询 age >= 23 并且 age <= 26 注意书写格式

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

在这里插入图片描述

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

db.user.find({name: /mongo/}); 
相当于%% select * from user where name like ‘%mongo%; 

在这里插入图片描述

10、查询 name 中以 mongo 开头的

db.user.find({name: /^mongo/});
相当于 select * from user where name like ‘mongo%; 

在这里插入图片描述
查询 name 中以 z结尾的 :

db.user.find({name: /n$/});

在这里插入图片描述

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

db.user.find({}, {name: 1, age: 1});
相当于:select name, age from user; 

在这里插入图片描述

当然 name 也可以用 true 或 false,
当用 ture 的情况下和 name:1 效果一样,
如果用 false 就 是排除 name,显示 name 以外的列信息。

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

db.user.find({age: {$gt: 25}}, {name: 1, age: 1}); 
相当于:select name, age from user where age >25;

在这里插入图片描述

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

升序:

 db.user.find().sort({age: 1}); 

降序:

 db.user.find().sort({age: -1});

在这里插入图片描述

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

 db.user.find({name: 'zhangsan', age: 22}); 相当于:select * from user where name = 'zhangsan' and age = '22'; 

在这里插入图片描述

15、查询前 5 条数据

 db.user.find().limit(5); 相当于:selecttop 5 * from user; 

在这里插入图片描述

16、查询 10 条以后的数据

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

在这里插入图片描述

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

db.user.find().limit(10).skip(5); 
可用于分页,limit里面的数字 是 pageSize,skip里的数字是(page-1)*pageSize

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

18、or 与 查询

 db.user.find({$or: [{age: 22}, {age: 25}]}); 相当于:select * from user where age = 22 or age = 25;

在这里插入图片描述

19、findOne 查询第一条数据

 db.user.findOne(); 相当于:selecttop 1 * from user;db.user.find().limit(1); 

在这里插入图片描述

20、查询某个结果集的记录条数 统计数量

db.user.find({age: {$gte: 25}}).count(); 相当于:select count(*) from user where age >= 20; 如果要返回限制之后的记录数量,要使用 count(true)或者 count(0) db.users.find().skip(10).limit(5).count(true);

在这里插入图片描述

四、修改数据

修改里面还有查询条件。你要该谁,要告诉 mongo。

查找名字叫做小明的,把年龄更改为 16 岁:

db.student.update({"name":"小明"},{$set:{"age":16}}); 

在这里插入图片描述

在这里插入图片描述

查找数学成绩是 70,把年龄更改为 33 岁:

db.student.update({"score.shuxue":70},{$set:{"age":33}});

更改所有匹配项目:" By default, the update() method updates a single document. To update multiple documents, use the multi option in the update() method.

db.student.update({"sex":"男"},{$set:{"age":33}},{multi: true}); 

在这里插入图片描述

完整替换,不出现$set 关键字了:
注意:

 db.student.update({"name":"小明"},{"name":"大明","age":16}); 

不写$set:{},则将匹配到的整条数据进行替换,覆盖原来的数据:
在这里插入图片描述

db.users.update({name: 'Lisi'}, {$inc: {age: 50}}, false, true); 
相当于:
update users set age = age + 50 where name = ‘Lisi’; 
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}); 

在这里插入图片描述

By default, the remove() method removes all documents that match the remove condition. Use the justOne option to limit the remove operation to only one of the matching documents.

db.restaurants.remove( { "borough": "Queens" }, { justOne: true } )

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/470739.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从LeetCode 210. Course Schedule II 了解拓扑排序

问题简述 给定n节课&#xff0c;每节课按0~n-1编号。 在修某些课的时候需要有其它课的基础&#xff0c;必须先上先修课。现在用pair的形式来表示要先修的课&#xff0c;比如 [ [0,1], [1,2] ] 就表示在修课程1之前必须先修课程0&#xff0c;修课程2之前必须修课程1。现在需要给…

MongoDb 大数据查询优化、 MongoDB 索引、复合索引、唯一索引、 explain 分 析查询速度

一、索引基础 索引是对数据库表中一列或多列的值进行排序的一种结构&#xff0c;可以让我们查询数据库变得 更快。 MongoDB 的索引几乎与传统的关系型数据库一模一样&#xff0c;这其中也包括一些基本的查询优化技巧。 下面是创建索引的命令&#xff1a; db.user.ensureIndex…

ipconfig不是内部或外部_晶振有什么作用,如何选择合适的晶振,为什么有时候用内部晶振?...

一、 什么是晶振晶振&#xff0c;全名叫"晶体振荡器"&#xff0c;它在电路当中起到产生振荡频率的作用&#xff0c;我们都知道&#xff0c;单片机可以看成是在时钟驱动下的时序逻辑电路&#xff0c;那么这个所需要的时钟就是晶振来产生&#xff0c;可以说它的单片机的…

Mongodb 账户权限配置

Mongodb 账户权限配置 1、第一步创建超级管理用户 use admindb.createUser({ user:admin, pwd:admin, roles:[{role:root,db:admin}] })2、第二步修改 Mongodb 数据库配置文件 默认路径&#xff1a;路径&#xff1a;C:\Program Files\MongoDB\Server\4.0\bin\mongod.cfg 打开…

笔记本电脑关机快捷键_2020年双十一值得入手的高性价比笔记本电脑外设推荐...

本文更新日期&#xff1a;2020.10.21 篇幅较长&#xff0c;请提前收藏关注电脑外设就是除主机外的大部分硬件设备都可称作外部设备&#xff0c;或叫外围设备&#xff0c;简称外设。计算机系统没有输入输出设备&#xff0c;就如计算机系统没有软件一样&#xff0c;是毫无意义的。…

MongoDB 的高级查询 aggregate 聚合管道

一、MongoDB 聚合管道&#xff08;Aggregation Pipeline&#xff09; 使用聚合管道可以对集合中的文档进行变换和组合。 实际项目&#xff1a;表关联查询、数据的统计。 MongoDB 中使用 db.COLLECTION_NAME.aggregate([{<stage>},...]) 方法 来构建和使用聚合管道。 先…

python函数在传参的时候,到底在传些什么?

C这样的语言用多了之后&#xff0c;在Python函数传递参数的时候&#xff0c;经常会遇到一个问题&#xff0c;我要传递一个引用怎么办&#xff1f; 比如我们想要传一个x到函数中做个运算改变x的值&#xff1a; def change(y):y 1x 1 print ("before change:", x) …

android学习笔记五。2、其他组件

一、ContentProvider内容提供者.是是android中一个应用向第三方共享数据的方式,android中的联系人,sms(短信记录)等都是通过这一方式来向外提供的 1、使用&#xff1a; 在应用中使用ContentProvider提供的数据并不是直接使用的,而是需要通过ContentResolver来实现的,ContentRes…

一维条形码识别c语言_条形码的优点

条形码是迄今为止最经济、实用的一种自动识别技术。条形码技术具有以下几个方面的优点A&#xff0e;输入速度快&#xff1a;与键盘输入相比&#xff0c;条形码输入的速度是键盘输入的5倍&#xff0c;并且能实现“即时数据输入”。B&#xff0e;可靠性高&#xff1a;键盘 输入数…

气象数据领航无人飞行器线路优化大赛解决方案(3rd place)

1 队伍介绍 队伍名称&#xff1a;酒后写诗 队伍成员&#xff1a;陈权、林望黎、黄章炜 队伍名次&#xff1a;3 / 1646 2 问题简介 这个问题说起来其实挺简单&#xff08;但实现起来困难重重&#xff09;&#xff0c;就是提供了气象局得到的10个模型的预测数据&#xff08;…

mac最好用的markdown_「建议收藏」PCMaclinux,最好用Markdown编辑器清单

文章很长&#xff0c;不想看&#xff0c;请直接拉到底看简略版清单&#xff01;&#xff01;如果您曾经用Word写过文章&#xff0c;并尝试将文本移动到CMS中(头条、百家号等)&#xff0c;那么您可能已经花费了大量时间&#xff0c;来调整这种跨平台转换导致的格式杂乱。因此&am…

Nodejs 操作 MongoDb 数据库

一、在 Nodejs 中使用 Mongodb 在前面的博文我们给大家讲了如何使用命令操作 Mongodb&#xff0c;这篇博文开始我们给大家讲解一 下如何使用 Nodejs 来操作 Mongodb 数据库 Nodejs 操作 mongodb 数据库官方文档&#xff1a;https://www.mongodb.org.cn/drivers/5.html npm i…

机智的ensemble

1 引言 本文主要结合了李宏毅的机器学习课程之Ensemble和周志华的《机器学习》西瓜书两者的说法&#xff0c;对ensemble这一竞赛利器做了总结。 Ensemble主要可以分为bagging和boosting两种方法。其中&#xff0c;bagging适用于基模型复杂度比较高的情况&#xff08;如树模型…

Linux的sort命令

Linux的sort命令 Linux的sort命令就是一种对文件排序的工具&#xff0c;sort命令的功能十分强大&#xff0c;是Shell脚本编程时常使用的文件排序工具。 sort命令将输入文件看做由多条记录组成的数据流&#xff0c;而记录由可变宽度的字符串组成&#xff0c;以换行符作为定界符。…

delphi 调用php接口_爱站权重查询 API 接口请求调用

爱站权重查询 API 接口在网上已经很多且大都封装成了 API 供别人调用。支持前台跨域请求&#xff0c;以GET/POST方式提交即可。爱站权重查询 API 接口可以查询百度权重、搜狗等级、360权重、神马权重、谷歌等级等&#xff0c;你可以选择调用本站的接口&#xff0c;也可以利用本…

Express 路由、Ejs 、静态文件托管、中间件

一、 Express 简单介绍 Express 是一个基于 Node.js 平台&#xff0c;快速、开放、极简的 web 开发框架&#xff0c;它提供一系 列强大的特性&#xff0c;帮助你创建各种 Web 和移动设备应用。 Express 官网&#xff1a; 英语官网&#xff1a;http://expressjs.com/中文官网…

相邻位数字差值的绝对值不能超过_热点争议中技术问题,伺服控制有几个零点?对应真绝对值多圈编码器意义...

回归技术&#xff0c;把技术问题单独挑出来讲透&#xff0c;争要争个明白&#xff0c;看要看得明白。技术就能越辩越明。如果有“真”与“假”之争&#xff0c;沉默不去争&#xff0c;就是让“真的”受伤&#xff0c;让真心实干的人受伤。伺服控制有三个零点&#xff0c;对应三…

Chapter1-1_Speech_Recognition(Overview)

文章目录1 古人看语音辨识2 什么是语音辨识2.1 输出部分 - Token2.2 输入部分 - 声音信号特征3 数据集4 模型本文为李弘毅老师【Speech Recognition - Overview】的课程笔记&#xff0c;课程视频youtube地址&#xff0c;点这里&#x1f448;(需翻墙)。 下文中用到的图片均来自…

[Swift]loadNibNamed方法

我们自定义UITableViewCell的时候&#xff0c;经常会创建一个xib文件。 &#xff08;注意&#xff1a;选择创建文件要继承于cocoa touch class&#xff0c;而不是cocoa class&#xff0c;否则你是选不了创建xib的&#xff01;&#xff01;&#xff01;&#xff09; 然后我们可以…

Express Cookie 的基本使用

一、Cookie 简介 ● cookie 是存储于访问者的计算机中的变量。可以让我们用同一个浏览器访问同一个域 名的时候共享数据。 ● HTTP 是无状态协议。简单地说&#xff0c;当你浏览了一个页面&#xff0c;然后转到同一个网站的另一个页 面&#xff0c;服务器无法认识到这是同一个…