2.MongoDB的基本的CRUD操作

2.1.创建文档

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

show dbs

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

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

use nodeing_cms

插入文档

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

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

查看有多少集合

show collections

2.2.读取文档

1.查询所有记录

db.user.find()

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

2.带条件查询

等于

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

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

大于

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

小于

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

大于等于

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

小于等于

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

查询某个区间数据

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

3.模糊查询

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

4.对查询结果进行排序

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

5.查询前面3条数据

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

6.跳过3条数据

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

7.or查询

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

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

8.查询第一条数据

db.user.findOne()

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

db.user.find().count()

2.2.读取文档

1.查询所有记录

db.user.find()

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

2.带条件查询

等于

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

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

大于

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

小于

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

大于等于

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

小于等于

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

查询某个区间数据

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

3.模糊查询

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

4.对查询结果进行排序

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

5.查询前面3条数据

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

6.跳过3条数据

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

7.or查询

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

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

8.查询第一条数据

db.user.findOne()

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

db.user.find().count()

2.3.更新文档

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

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

2.替换

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

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

2.4.删除文档

1.删除文档

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

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

2.删除集合

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. 数据库之 MySQL --- 下载、安装 及 概述(一)

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一 . MySql数据库的安装 1.图解MySQL程序结构 ​ 2.双击运行安装程序:以Win32位为例 ...

  2. Java实现 LeetCode 685 冗余连接 II(并查集+有向图)

    685. 冗余连接 II 在本问题中,有根树指满足以下条件的有向图.该树只有一个根节点,所有其他节点都是该根节点的后继.每一个节点只有一个父节点,除了根节点没有父节点. 输入一个有向图,该图由一个有着 ...

  3. Java实现第十届蓝桥杯质数

    试题 D: 质数 本题总分:10 分 [问题描述] 我们知道第一个质数是 2.第二个质数是 3.第三个质数是 5--请你计算 第 2019 个质数是多少? [答案提交] 这是一道结果填空的题,你只需要 ...

  4. 小师妹学JavaIO之:目录还是文件

    目录 简介 linux中的文件和目录 目录的基本操作 目录的进阶操作 目录的腰疼操作 总结 简介 目录和文件傻傻分不清楚,目录和文件的本质到底是什么?在java中怎么操纵目录,怎么遍历目录.本文F师兄 ...

  5. k8s学习-集群安装

    3.kubernetes安装 3.1.规划 hostname ip 内存 核 硬 说明 harbor 192.168.136.30 2G 2 100G 私有仓库 koolshare 2G 2 20G ...

  6. docker registry 镜像同步

    docker registry 镜像同步 Intro 之前我们的 docker 镜像是保存在 Azure 的 Container Registry 里的,最近我们自己搭建了一个 docker regi ...

  7. 【转载】自动化魔方求解器的Bug——选择合适的色彩空间

    目录 1. 准备工作-- 2. RGB颜色空间 3. LAB色彩空间 4. YCrCb色彩空间 5. HSV色彩空间 Color spaces in OpenCV (C++ / Python) 几天前 ...

  8. [noi.ac省选模拟赛]第11场题解集合

    题目   比赛界面. T1   比较简单.容易想到是求鱼竿的最大独立集.由于题目的鱼竿可以被分割为二分图,就可以想到最大匹配.   尝试建边之后会发现边的数量不小,但联系题目性质会发现对于一条鱼竿,它 ...

  9. String Problem(模板)【最短路】

    String Problem 题目链接(点击) Boy Valera likes strings. And even more he likes them, when they are identic ...

  10. Seafile的配置

    如果部署在apache或nginx后面,就是访问默认80或443.反向代理会帮你转到8000和8082上. 我使用443,我在路由器上设定了转发,比如 对外网12323这个端口会转到内网地址443上 ...