【MongoDB】数据库、集合、文档常用CRUD命令
目录
一、数据库操作
1、创建数据库操作
2、查看当前有哪些数据库
3、查看当前在使用哪个数据库
4、删除数据库
二、集合操作
1、查看有哪些集合
2、删除集合
3、创建集合
三、文档基本操作
1、插入数据
2、查询数据
3、删除数据
4、修改数据
四、文档分页查询
五、文档其他查询
1、正则条件查询(模糊查询)
2、比较查询
3、包含查询(in)
4、条件查询
一、数据库操作
1、创建数据库操作
use 数据库名 # 如果该数据库存在,则该命令变为使用该数据库
2、查看当前有哪些数据库
show dbs # 也可以使用show databases进行查看
3、查看当前在使用哪个数据库
db
4、删除数据库
db.dropDatabase() # 将当前数据库删除
二、集合操作
1、查看有哪些集合
show collections
2、删除集合
db.name.dropCollection() # 将名为name的集合删除
3、创建集合
集合的创建有两种方式:显示创建、隐式创建,其中隐式创建是在进行文档插入时自动创建出的集合,在下文提及,这里先学习显示创建
db.createCollection(name) # 创建出一个名为name的集合
三、文档基本操作
1、插入数据
db.collection.insert(data)
# 将数据插入collection中此处的collection是具体的集合名称,如果该集合不存在于数据库,则会隐式的创建出该集合并将数据插入
db.collection.insertMany([{数据1},{数据2}]) # 将多个数据插入
示例:db.person.insert({"username":"zs","age":"10"})![]()
2、查询数据
db.collection.find() # 将数据全部查询
db.collection.find({username:"zs"}) # 根据条件进行查询
db.collection.find({username:"zs"},{username:1,_id:0}) # 投影查询,其中1表示显示字段,0表示不显示该字段
3、删除数据
db.collection.remove({}) # 全部删除
db.collection.remove({_id:"111"}) # 将id为111的数据删除
4、修改数据
db.collection.update({userid:"1"},{username:"zs"}) # 覆盖修改,将userid为1的数据修改为username:"zs"},这种修改方式会导致其他字段消失,仅留下第二个参数的数据
db.collection.update({userid:"1"},{$set:{username:"zs"}}) # 这种修改会将userid为1的第一条数据中的username这一个字段修改为zs,其余字段不会被删除
db.collection.update({userid:"1"},{username:"zs"},{multi:true}) # 这种修改会将userid为1的所有数据的username进行修改
db.collection.update({userid:"1"},{$inc:{count:NumberInt(1)}}) # 会将userid为1的用户的count字段自增1
四、文档分页查询
db.collection.count(条件)# 统计该集合中的数据条数,如果不加条件则是全部数据的条数
db.collection.find(条件).skip(数值m).limit(数值n) # 指的是查询符合条件的数据中跳过m条后取n条数据返回
db.collection.find(条件).sort({userid:1,id:-1}) # 其中1指的是按照userid升序 -1指的是按照id降序
![]()
五、文档其他查询
1、正则条件查询(模糊查询)
db.collection.find({username:/ss/}) # 查询集合里username中包含ss的数据
db.collection.find({username:/^张/}) # 查询集合里username以张开头的数据
2、比较查询
db.collection.find({count:{$gt:NumberInt(30)}) # 查询集合中count字段值大于30的数据
< : $lt
<= : $lte
> : $ gt
>= :$gte
!= : $ne
3、包含查询(in)
db.collection.find({count:{$in:[11,12]}}) # 查询集合里count是11,12的数据
如果是排除11与12则使用$nin
4、条件查询
db.collection.find({$and[{条件1},{条件2}]})
db.collection.find({$or[{条件1},{条件2}]})
相关文章:
【MongoDB】数据库、集合、文档常用CRUD命令
目录 一、数据库操作 1、创建数据库操作 2、查看当前有哪些数据库 3、查看当前在使用哪个数据库 4、删除数据库 二、集合操作 1、查看有哪些集合 2、删除集合 3、创建集合 三、文档基本操作 1、插入数据 2、查询数据 3、删除数据 4、修改数据 四、文档分页查询 …...
【JVM】是如何管理内存的
文章目录 JVM 内存管理 模型JVM内存管理示例解析jvm 常见优化手段 JVM 内存管理 模型 以下是JVM内存管理的详细图示: ------------------------------------------------------ | Java 运行时数据区 | ------…...
进程与线程、线程创建、线程周期、多线程安全和线程池(ThreadPoolExecutor)
目录 进程与线程线程和进程的区别是什么?线程分两种:用户线程和守护线程线程创建四种方式run()和start()方法区别:为什么调用 start() 方法时会执行 run() 方法,为什么不能直接调用 run() 方法?Runnable接口和Callable…...
《论文阅读13》Efficient Urban-scale Point Clouds Segmentationwith BEV Projection
一、论文 研究领域: 城市级3D语义分割论文:Efficient Urban-scale Point Clouds Segmentationwith BEV Projection论文链接 注: BEV: Birds Eye View BEV投影是指鸟瞰视角(Birds Eye View,简称BEV)的一种从上方观看对象或场景的…...
Django实现音乐网站 ⑻
使用Python Django框架制作一个音乐网站, 本篇主要是后台对单曲原有功能的基础上进行部分功能实现和显示优化。 目录 新增编辑 歌手下拉显示修改 设置歌曲时长 安装eyed3库 获取mp3时长 歌曲时长字段修改 重写save方法 增加歌手单曲数量 查询歌手单曲数量 …...
VScode中同时打开两个脚本
使用快捷键: CtrlAltRightArrow 效果: 可以看到,上述两个脚本使用独立的窗口进行编辑和查看。...
能源电力工程师专属Python学习资料
随着我国新型电力系统的建设,一方面电源侧各类新能源装机快速增长,对于新能源出力的功率预测需求日益增长;另一方面,我国电力市场经过 8 年建设,关于电力商品价格影响因素的研究亟待深入。超过 90% 的业务小伙伴都具备…...
推荐5款实用软件,提高工作效率,丰富生活乐趣
分享软件会让我感到开心和满足,因为我知道这些软件可以提高工作效率,丰富生活乐趣。今天再次将几款非常实用的软件推荐给大家。 截图翻译工具——CopyTranslator CopyTranslator是一款非常实用的截图翻译软件,它支持对截图、选定区域进行OCR文字识别,自动翻…...
Python爬虫在电商数据挖掘中的应用
作为一名长期扎根在爬虫行业的专业的技术员,我今天要和大家分享一些有关Python爬虫在电商数据挖掘中的应用与案例分析。在如今数字化的时代,电商数据蕴含着丰富的信息,通过使用爬虫技术,我们可以轻松获取电商网站上的产品信息、用…...
element-ui 表格el-table的列内容溢出省略显示,鼠标移上显示全部和定制样式
1、在对应列加上省略显示show-overflow-tooltip属性,如果加上这属性,鼠标移上还是没效果,要考滤是不是层级的原因,被其他挡住了。 :deep(.el-tooltip){position: relative;z-index:9; } <el-table-column label"用款渠…...
研究人员发现特斯拉汽车能被越狱,可免费解锁付费功能
Bleeping Computer 网站披露,柏林工业大学(Technical University of Berlin)的研究人员开发出一种新技术,可以破解特斯拉近期推出所有车型上使用的基于 AMD 的信息娱乐系统,并使其运行包括付费项目在内的任何软件。 实…...
【设计模式】责任链的基本概念及使用Predicate灵活构造校验链
文章目录 1. 概述1.1.背景1.2.责任链模式的概念 2.责任链的基本写法2.1.链表实现2.2.数组实现 3.Predicate校验链2.1.使用Predicate改写代码2.1.更丰富的条件拓展 4.总结 1. 概述 1.1.背景 在最近的开发中遇到了这么一个需求,需要对业务流程中的各个参数做前置校验…...
Taro保存图片到手机
萌新亚历山大啊,搞了一下午,真多坑 Taro.downloadFile({url: res,filePath: Taro.env.USER_DATA_PATH /xcxcode.jpg,success: res > {if (res.statusCode 200) {console.log(res)const tempFilePath res.filePath; // 获取下载的临时文件路径// …...
zookeeper --- 基础篇
一、zookeeper简介 1.1、什么是zookeeper zookeeper官网:https://zookeeper.apache.org/ 大数据生态系统里的很多组件的命名都是某种动物或者昆虫,他是用来管 Hadoop(大象)、Hive(蜜蜂)、Pig(小 猪)的管理员。顾名思义就是管理…...
Golang map 常用方法
文章目录 前言按key排序按value排序统计字符串中元素重复出现次数并将结果排序返回 前言 由于map是无序的,所以排序成 slice 返回,且都使用泛,代码只是示例,省略了错误判断 按key排序 package mainimport "fmt"func example[T c…...
用于视觉跟踪的在线特征选择研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
Docker基本使用
查看本地镜像 查看本地:docker imagesPull镜像:docker pull nginx:latest登录镜像:docker login hub.docker.com -u **** -p ****制作镜像:docker build -t xxxx:v1push:docker push xxx:v1删除镜像:docker rmi #imag…...
PHP生成随机数
要在 PHP 中生成随机密码,可以使用 rand() 函数和字符串操作函数。以下是一个示例代码来生成包含字母、数字和特殊字符的随机密码 function generateRandomPassword($length 8) {// 定义包含字母、数字和特殊字符的字符集$characters abcdefghijklmnopqrstuvwxyz…...
MongoDB:Unrecognized option: storage
MongoDB一直显示 Unrecognized option: storage try ‘mongod --help’ for more information 意思是我们配置的config文件出了问题。 说明:MongoDB采用的是YAML格式,所以我们只需要稍微改改就好。 在storage前面:没有空格 下面两行最前面…...
Java基础九 - 异常
1. throw 和 throws 1. throw是在代码运行过程中引起一个异常 2. throws是将异常声明但是不处理,而是将异常往上传,谁调用我就交给谁处理 2. final、finally、finalize 1. final是修饰符,用于修饰变量、方法、类修饰变量,最开始…...
C++实现分布式网络通信框架RPC(3)--rpc调用端
目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中,我们已经大致实现了rpc服务端的各项功能代…...
【WiFi帧结构】
文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...
可靠性+灵活性:电力载波技术在楼宇自控中的核心价值
可靠性灵活性:电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中,电力载波技术(PLC)凭借其独特的优势,正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据,无需额外布…...
ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
python如何将word的doc另存为docx
将 DOCX 文件另存为 DOCX 格式(Python 实现) 在 Python 中,你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是,.doc 是旧的 Word 格式,而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
Java编程之桥接模式
定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...
Java毕业设计:WML信息查询与后端信息发布系统开发
JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发,实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构,服务器端使用Java Servlet处理请求,数据库采用MySQL存储信息࿰…...
SQL慢可能是触发了ring buffer
简介 最近在进行 postgresql 性能排查的时候,发现 PG 在某一个时间并行执行的 SQL 变得特别慢。最后通过监控监观察到并行发起得时间 buffers_alloc 就急速上升,且低水位伴随在整个慢 SQL,一直是 buferIO 的等待事件,此时也没有其他会话的争抢。SQL 虽然不是高效 SQL ,但…...
ubuntu系统文件误删(/lib/x86_64-linux-gnu/libc.so.6)修复方案 [成功解决]
报错信息:libc.so.6: cannot open shared object file: No such file or directory: #ls, ln, sudo...命令都不能用 error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory重启后报错信息&…...







