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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Selenium之css怎么实现元素定位?

世界上最远的距离大概就是明明看到一个页面元素站在那里&#xff0c;但是我却定位不到&#xff01;&#xff01; Selenium定位元素的方法有很多种&#xff0c;像是通过id、name、class_name、tag_name、link_text等等&#xff0c;但是这些方法局限性太大&#xff0c; 随着自动…

PS透明屏,在科技展示中,有哪些优点展示?

PS透明屏是一种新型的显示技术&#xff0c;它将传统的显示屏幕与透明材料相结合&#xff0c;使得屏幕能够同时显示图像和透过屏幕看到背后的物体。 这种技术在商业展示、广告宣传、产品展示等领域有着广泛的应用前景。 PS透明屏的工作原理是利用透明材料的特性&#xff0c;通…

旷视科技AIoT软硬一体化走向深处,生态和大模型成为“两翼”?

齐奏AI交响曲的当下&#xff0c;赛道玩家各自精彩。其中&#xff0c;被称作AI四小龙的商汤科技、云从科技、依图科技、旷视科技已成长为业内标杆&#xff0c;并积极追赶新浪潮。无论是涌向二级市场还是布局最新风口大模型&#xff0c;AI四小龙谁都不甘其后。 以深耕AIoT软硬一…

机器学习-自定义Loss函数

1、简介 机器学习框架中使用自定义的Loss函数&#xff0c; 2、应用 &#xff08;1&#xff09;sklearn from sklearn.metrics import max_error from sklearn.metrics import make_scorer from sklearn.model_selection import cross_val_score from sklearn.linear_model …

腾讯云标准型CVM云服务器详细介绍

腾讯云CVM服务器标准型实例的各项性能参数平衡&#xff0c;标准型云服务器适用于大多数常规业务&#xff0c;例如&#xff1a;web网站及中间件等&#xff0c;常见的标准型云服务器有CVM标准型S5、S6、SA3、SR1、S5se等规格&#xff0c;腾讯云服务器网来详细说下云服务器CVM标准…

Ubuntu22.04安装docker

在ubuntu22.04上安装docker还是比较容易的&#xff0c;之前在公司的centos6上边装docker&#xff0c;那才真是一言难尽呀&#xff0c;废话不多说&#xff0c;开始安装 1、更新包管理器 apt update 2、安装必要的软件包&#xff0c;以便允许 apt 使用 HTTPS 仓库 sudo apt i…

手撕Java集合——链表

链表 一、链表概念特性二、不带头单向非循环链表实现&#x1f351;1、定义结点&#x1f351;2、打印链表&#x1f351;3、使用递归逆序打印链表&#x1f351;4、头插&#x1f351;5、尾插&#x1f351;6、指定位置插入&#x1f351;7、查找是否包含关键字key是否在单链表当中&a…

多传感器融合相关技术

重要说明&#xff1a;本文从网上资料整理而来&#xff0c;仅记录博主学习相关知识点的过程&#xff0c;侵删。 一、参考资料 多传感器融合定位学习 深蓝-多传感器定位融合 深蓝学院 多传感器融合定位 作业 多传感器融合详解 二、相关介绍 1. 毫米波雷达&#xff08;Radar&a…

R语言4_安装BayesSpace

环境Ubuntu22/20, R4.1 你可能会报错说你的R语言版本没有这个库&#xff0c;但其实不然。这是一个在Bioconductor上的库。 同时我也碰到了这个问题&#xff0c;ERROR: configuration failed for package systemfonts’等诸多类似问题&#xff0c;下面的方法可以一并解决。 第…

790. 多米诺和托米诺平铺

题目描述&#xff1a; 主要思路&#xff1a; class Solution { public:int numTilings(int n) {long long f[n][4],mod1e97;f[0][0]1;f[0][1]f[0][2]0;f[0][3]1;for(int i1;i<n;i){f[i][0]f[i-1][3];f[i][1] (f[i-1][0]f[i-1][2])%mod;f[i][2] (f[i-1][0]f[i-1][1])%mod;f…

力扣221.最大正方形(动态规划)

思路&#xff1a; 思路&#xff1a;从[0,0]元素开始&#xff0c;计算每个元素对应其与[0,0]之间矩阵块中最大正方形边长情况&#xff1a;1&#xff09;matrix [ i , j ] ‘0’ --> 元素对应的最大正方形为0。情况&#xff1a;2&#xff09;matrix [ i , j ] ‘1’ -->…

中级课程-SSRF(CSRF进阶)

文章目录 成因危害挖掘 成因 危害 挖掘

详解JAVA远程debug

目录 1.什么是远程debug&#xff1f; 2.远程debug普通JAVA程序 环境 测试程序 程序启动指令 编译器配置 3.远程debug JAVA Web程序 4.远程debug spring boot程序 1.什么是远程debug&#xff1f; 远程debug&#xff0c;也就是可以在本地debug远端部署的程序&#xff0c…

界面控件DevExpress WPF Chart组件——拥有超快的数据可视化库!

DevExpress WPF Chart组件拥有超大的可视化数据集&#xff0c;并提供交互式仪表板与高性能WPF图表库。DevExpress Charts提供了全面的2D / 3D图形集合&#xff0c;包括数十个UI定制和数据分析/数据挖掘选项。 PS&#xff1a;DevExpress WPF拥有120个控件和库&#xff0c;将帮助…

快速上手PyCharm指南

PyCharm简介 PyCharm是一种Python IDE&#xff08;Integrated Development Environment&#xff0c;集成开发环境&#xff09;&#xff0c;带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具&#xff0c;比如调试、语法高亮、项目管理、代码跳转、智能提示、自动…

Fabric系列 - 知识点整理

知识点 源码编译 主机编译 容器编译 手动部署(docker-compose) 单peer 多peer 中途加peer 多主机多peer 链码 语法, 接口 (go版) 命令行调用 ca server 在DApp中使用SDK调用 (js版) 部署的几个阶段 部署1排序和1节点, 1组织1通道 光部署能Dapp 带ca server (每个组织一个)…

CI/CD—K8S 基本理解与部署

1 K8S 是什么 Kubernetes 是一款容器的编排调度工具&#xff0c;来源于 Google 开源的 Brog 系统。Kubernetes简称K8S&#xff0c;是用8代替8个字符 “ubernete” 而成的缩写&#xff0c;用于管理云平台中多个主机上的容器化的应用&#xff0c;Kubernetes 的目标是让部署容器化…

【javaweb】学习日记Day1 - HTML CSS入门

目录 一、图片标签 ① 绝对路径 1.绝对磁盘路径 2.绝对网络路径 ② 相对路径 &#xff08;推荐&#xff09; 二、标题标签 三、水平线标签 四、标题样式 1、CSS引入样式 ① 行内样式 ② 内嵌样式 ③ 外嵌样式 2、CSS选择器 ① 元素选择器 ② id选择器 ③…

读书笔记 |【项目思维与管理】➾ 顺势而动

读书笔记 |【项目思维与管理】➾ 顺势而动 一、企业步入“终结者时代”二、过去成功的经验也许是最可怕的三、做好非重复性的事四、适应客户是出发点五、向知识型企业转变六、速度是决胜条件 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; …

Python web实战之Django 的缓存机制详解

关键词&#xff1a;Python、Web 开发、Django、缓存 1. 缓存是什么&#xff1f;为什么需要缓存&#xff1f; 在 Web 开发中&#xff0c;缓存是一种用于存储数据的临时存储区域。它可以提高应用程序的性能和响应速度&#xff0c;减轻服务器的负载。 当用户访问网页时&#xff…