MongoDB快速入门教程 (2)
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)的更多相关文章
- MongoDb 快速入门教程
文章首发于[博客园-陈树义],点击跳转到原文MongoDb 快速入门教程. MongoDb 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. 它是可扩展的 ...
- MongoDB快速入门教程 (3.2)
3.2.索引 索引是特殊的数据结构,索引存储在一个易于遍历读取的数据集合中,建立索引,通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条 ...
- MongoDB快速入门教程 (4.4)
4.5.Mongoose索引和方法 4.5.1.设置索引 let UserSchema = mongoose.Schema({ sn: { type: Number, // 设置唯一索引 unique ...
- MongoDB快速入门教程 (4.3)
4.3.Mongoose模块化 4.3.1.为什么要进行模块化拆分? 模块化拆分的目的是为了代码的复用,让整个项目的结构更加清晰,举个例子:当数据库中的集合变多的时候,例如有课程.订单.分类.教师等多 ...
- MongoDB快速入门教程 (4.2)
4.2.Mongoose实现增删查改 中文文档地址: https://cn.mongoosedoc.top/docs/guide.html 4.2.1.Mongoose是什么? Mongoose是Mo ...
- MongoDB快速入门教程 (4.1)
4.Mongoose使用 4.1.nodejs操作mongodb 文档地址:http://mongodb.github.io/node-mongodb-native/3.2/tutorials/cru ...
- MongoDB快速入门教程 (3.3)
3.4.聚合 3.4.1.什么是聚合? MongoDB中聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果.有点类似sql语句中的 count(*) 例如上图 ...
- MongoDB快速入门教程(3.1)
3.MongoDB进阶 3.1.权限验证 以下内容适用于Mac系统用户,window系统用户请看后面文档 3.1.1.创建超级管理员用户 默认情况下连接mongodb是不需要用户名和密码的,这样不安全 ...
- MongoDB快速入门教程 (1)
1.MongoDB初识 1.1.MongoDB是什么? MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于 ...
随机推荐
- 数据库之 MySQL --- 下载、安装 及 概述(一)
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 一 . MySql数据库的安装 1.图解MySQL程序结构 2.双击运行安装程序:以Win32位为例 ...
- Java实现 LeetCode 685 冗余连接 II(并查集+有向图)
685. 冗余连接 II 在本问题中,有根树指满足以下条件的有向图.该树只有一个根节点,所有其他节点都是该根节点的后继.每一个节点只有一个父节点,除了根节点没有父节点. 输入一个有向图,该图由一个有着 ...
- Java实现第十届蓝桥杯质数
试题 D: 质数 本题总分:10 分 [问题描述] 我们知道第一个质数是 2.第二个质数是 3.第三个质数是 5--请你计算 第 2019 个质数是多少? [答案提交] 这是一道结果填空的题,你只需要 ...
- 小师妹学JavaIO之:目录还是文件
目录 简介 linux中的文件和目录 目录的基本操作 目录的进阶操作 目录的腰疼操作 总结 简介 目录和文件傻傻分不清楚,目录和文件的本质到底是什么?在java中怎么操纵目录,怎么遍历目录.本文F师兄 ...
- k8s学习-集群安装
3.kubernetes安装 3.1.规划 hostname ip 内存 核 硬 说明 harbor 192.168.136.30 2G 2 100G 私有仓库 koolshare 2G 2 20G ...
- docker registry 镜像同步
docker registry 镜像同步 Intro 之前我们的 docker 镜像是保存在 Azure 的 Container Registry 里的,最近我们自己搭建了一个 docker regi ...
- 【转载】自动化魔方求解器的Bug——选择合适的色彩空间
目录 1. 准备工作-- 2. RGB颜色空间 3. LAB色彩空间 4. YCrCb色彩空间 5. HSV色彩空间 Color spaces in OpenCV (C++ / Python) 几天前 ...
- [noi.ac省选模拟赛]第11场题解集合
题目 比赛界面. T1 比较简单.容易想到是求鱼竿的最大独立集.由于题目的鱼竿可以被分割为二分图,就可以想到最大匹配. 尝试建边之后会发现边的数量不小,但联系题目性质会发现对于一条鱼竿,它 ...
- String Problem(模板)【最短路】
String Problem 题目链接(点击) Boy Valera likes strings. And even more he likes them, when they are identic ...
- Seafile的配置
如果部署在apache或nginx后面,就是访问默认80或443.反向代理会帮你转到8000和8082上. 我使用443,我在路由器上设定了转发,比如 对外网12323这个端口会转到内网地址443上 ...