2.MongoDB的基本的CRUD操作

2.1.创建文档

在具体操作之前,想要知道有多少数据库,可以执行下面命令

  1. show dbs

在mongodb中,数据库中包含的叫做集合(表),集合中存储的内容叫做文档(记录)

在具体创建文档之前,也需要选定数据库 语法: use 数据库名, 例如

  1. use nodeing_cms

插入文档

  1. db.user.insert({"name": "admin", "age": 20})

只要执行这条命令,会自动创建user集合,然后在user集合中增加一个文档

查看有多少集合

  1. show collections

2.2.读取文档

1.查询所有记录

  1. db.user.find()

这条命令的执行效果类似于sql语句: select * from user

2.带条件查询

等于

  1. db.user.find({"age": 20})

这条命令表示查询user中age为20的数据

大于

  1. db.user.find({"age": {$gt: 20}})

小于

  1. db.user.find({"age": {$lt: 20}})

大于等于

  1. db.user.find({"age": {$gte: 20}})

小于等于

  1. db.user.find({"age": {$lte: 20}})

查询某个区间数据

  1. db.user.find({"age": {$lte: 21, $gte: 20}})

3.模糊查询

  1. db.user.find({"name":/admin/})

4.对查询结果进行排序

  1. // 1 升序 -1 降序
  2. db.user.find().sort({"age":1})

5.查询前面3条数据

  1. db.user.find().sort({"age":1}).limit(3)

6.跳过3条数据

  1. db.user.find().sort({"age":1}).skip(3)

7.or查询

  1. db.user.find({$or: [{"age": 20}, {"age": 21}]})

上面命令表示查询年龄20或者年龄21的数据

8.查询第一条数据

  1. db.user.findOne()

9.统计查询出来的结果条数

  1. db.user.find().count()

2.2.读取文档

1.查询所有记录

  1. db.user.find()

这条命令的执行效果类似于sql语句: select * from user

2.带条件查询

等于

  1. db.user.find({"age": 20})

这条命令表示查询user中age为20的数据

大于

  1. db.user.find({"age": {$gt: 20}})

小于

  1. db.user.find({"age": {$lt: 20}})

大于等于

  1. db.user.find({"age": {$gte: 20}})

小于等于

  1. db.user.find({"age": {$lte: 20}})

查询某个区间数据

  1. db.user.find({"age": {$lte: 21, $gte: 20}})

3.模糊查询

  1. db.user.find({"name":/admin/})

4.对查询结果进行排序

  1. // 1 升序 -1 降序
  2. db.user.find().sort({"age":1})

5.查询前面3条数据

  1. db.user.find().sort({"age":1}).limit(3)

6.跳过3条数据

  1. db.user.find().sort({"age":1}).skip(3)

7.or查询

  1. db.user.find({$or: [{"age": 20}, {"age": 21}]})

上面命令表示查询年龄20或者年龄21的数据

8.查询第一条数据

  1. db.user.findOne()

9.统计查询出来的结果条数

  1. db.user.find().count()

2.3.更新文档

1.将name为admin的年龄修改为209

  1. db.user.update({"name": "admin"}, {$set: {"age": 209}})

2.替换

  1. db.user.update({"name": "admin"}, {"age": 209})

注意,这条语句和上一条语句的唯一区别就是把$set给去掉了,这样就表示把name为admin这条记录给替换成{"age": 209}

2.4.删除文档

1.删除文档

  1. db.user.remove({"name": "admin4"})

上面代码表示删除name为admin4的文档

2.删除集合

  1. db.admin.drop()

上面代码表示删除admin集合

螺钉课堂视频课程地址:http://edu.nodeing.com

MongoDB快速入门教程 (2)的更多相关文章

  1. MongoDb 快速入门教程

    文章首发于[博客园-陈树义],点击跳转到原文MongoDb 快速入门教程. MongoDb 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. 它是可扩展的 ...

  2. MongoDB快速入门教程 (3.2)

    3.2.索引 索引是特殊的数据结构,索引存储在一个易于遍历读取的数据集合中,建立索引,通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条 ...

  3. MongoDB快速入门教程 (4.4)

    4.5.Mongoose索引和方法 4.5.1.设置索引 let UserSchema = mongoose.Schema({ sn: { type: Number, // 设置唯一索引 unique ...

  4. MongoDB快速入门教程 (4.3)

    4.3.Mongoose模块化 4.3.1.为什么要进行模块化拆分? 模块化拆分的目的是为了代码的复用,让整个项目的结构更加清晰,举个例子:当数据库中的集合变多的时候,例如有课程.订单.分类.教师等多 ...

  5. MongoDB快速入门教程 (4.2)

    4.2.Mongoose实现增删查改 中文文档地址: https://cn.mongoosedoc.top/docs/guide.html 4.2.1.Mongoose是什么? Mongoose是Mo ...

  6. MongoDB快速入门教程 (4.1)

    4.Mongoose使用 4.1.nodejs操作mongodb 文档地址:http://mongodb.github.io/node-mongodb-native/3.2/tutorials/cru ...

  7. MongoDB快速入门教程 (3.3)

    3.4.聚合 3.4.1.什么是聚合? MongoDB中聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果.有点类似sql语句中的 count(*) 例如上图 ...

  8. MongoDB快速入门教程(3.1)

    3.MongoDB进阶 3.1.权限验证 以下内容适用于Mac系统用户,window系统用户请看后面文档 3.1.1.创建超级管理员用户 默认情况下连接mongodb是不需要用户名和密码的,这样不安全 ...

  9. MongoDB快速入门教程 (1)

    1.MongoDB初识 1.1.MongoDB是什么? MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于 ...

随机推荐

  1. 【Springboot HBase】遇到的一些问题

    想要运行的代码需要在application中运行 使用@Component并实现CommandLineRunner接口.重写方法@Override run( ) @Component public c ...

  2. Redis 入门到分布式 (一)Redis初识

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.Redis特性目录 Redis的特性: 速度快 持久化 多种数据结构 支持多种编辑语言 功能丰富 简 ...

  3. Java实现 LeetCode 789 逃脱阻碍者(曼哈顿距离)

    789. 逃脱阻碍者 你在进行一个简化版的吃豆人游戏.你从 (0, 0) 点开始出发,你的目的地是 (target[0], target[1]) .地图上有一些阻碍者,第 i 个阻碍者从 (ghost ...

  4. Java实现 黑洞数

    任意一个5位数,比如:34256,把它的各位数字打乱,重新排列,可以得到一个最大的数:65432,一个最小的数23456.求这两个数字的差,得:41976,把这个数字再次重复上述过程(如果不足5位,则 ...

  5. java实现第六届蓝桥杯奇怪的数列

    奇怪的数列 从X星截获一份电码,是一些数字,如下: 13 1113 3113 132113 1113122113 - YY博士经彻夜研究,发现了规律: 第一行的数字随便是什么,以后每一行都是对上一行& ...

  6. 熬夜之作:一文带你了解Cat分布式监控

    Cat 是什么? CAT(Central Application Tracking)是基于 Java 开发的实时应用监控平台,包括实时应用监控,业务监控. CAT 作为服务端项目基础组件,提供了 Ja ...

  7. CentOS7 yum 安装配置 MySQL 5.7

    1.配置yum源 # 下载mysql源安装包 wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm # 安装 ...

  8. 实验四 Linux系统C语言开发环境学习

    项目 内容 这个作业属于哪个课程 Linux系统与应用 这个作业的要求在哪里 作业要求链接 学号-姓名 17041428-朱槐健 作业学习目标 1.Linux系统下C语言开发环境搭建 2.学习Linu ...

  9. 基于 abp vNext 和 .NET Core 开发博客项目 - Blazor 实战系列(三)

    系列文章 基于 abp vNext 和 .NET Core 开发博客项目 - 使用 abp cli 搭建项目 基于 abp vNext 和 .NET Core 开发博客项目 - 给项目瘦身,让它跑起来 ...

  10. matplotlib 示例

    示例1 import numpy as np import matplotlib.pyplot as plt #plt.rcParams['font.family'] = ['sans-serif'] ...