IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> mongo的基本操作 -> 正文阅读

[大数据]mongo的基本操作

基本操作

命令操作 ----- maogo

  • 退出mongoDB使用exit

  • 查看所有的数据库列表 ---- show dbs

?

  • 创建数据库或切换数据库 --- use 数据库名
  • 可以使用db命令来查看当前所在的数据库名称

?

  • 给数据库中创建一个members的集合,并向集合中添加文档(行)数据 ---- db.表名/集合名.insert(JSON格式数据)

  • 查看当前数据库中的集合列表 --- show tables 或者 show collections

?

  • 删除表 --- db.表名/集合名.drop()

?

  • 删除库 --- db.dropDatabase()

?

增删改查

# 添加单条文档数据
db.表名/集合名.insertOne({ key: value , key: value...})

# 添加多条文档数据
db.表名/集合名.insertMany([{}, {}, {}])

# 可以添加单条也可以多条数据(为主)
db.表名/集合名.insert( {} )
db.表名/集合名.insert([{}, {} ])

  • 查询所有的数据 --- db.表名/集合名.find(); # 获取全部

  • 带条件查询 --- db.表名/集合名.find({key:value,key:value....})

  • 字段显示控制 --- db.表名/集合名.find({key:value,key:value....})

  • 逻辑运算
### 条件表达式
# 年龄大于5的
db.表名/集合名.find({age:{$gt:5}});  #age > 5(great than)
# 年龄大于等于5的
db.表名/集合名.find({age:{$gte:5}}); #age >= 5 (great than & equal)
# 年龄小于5的
db.表名/集合名.find({age:{$lt:5}}); #age < 5  (less than)
# 年龄小于等于5的
db.表名/集合名.find({age:{$lte:5}}); #age <= 5
# 年龄不等于5的
db.表名/集合名.find({age:{$ne:5}}); #age != 5   (not equal)
# 在一个指定的数值中查询  $in    年龄在不在这几个指定数值当中
db.表名/集合名.find({age:{$in:[1,2,3]})  ## where xxx in '集合'

## 且关系  and
db.表名/集合名.find({age:{$lt:5},username:"user11"})
## where age < 5 & username = 'user11'

## 或关系 or(有点绕)
db.表名/集合名.find({$or:[{条件1},{条件2}]})
## 例如
db.表名/集合名.find({$or:[{age:{$ne:5}},{username: "user11"}]});

需求:查询出年龄小于30或者gender为0的数据
db.members.find({$or:[{age:{$lt:30}},{gender:0}]})

  • 模糊查询 ---- db.表名/集合名.find({字段名:/正则/i})

  • 统计

db.表名/集合名.count(); // 统计所有的记录的总数

db.表名/集合名.find({}).count(); // 统计符合条件的结果的记录总数

注意点:find()顺序是否可以与count()颠倒。count不能与find的顺序交换

  • 排序

# 1 升序 -1 降序 字段

# 以age字段来升序

db.表名/集合名.find().sort({age:1})

# 以age字段来降序

db.表名/集合名.find().sort({age:-1})

  • 分页(实用)

db.表名/集合名.find().limit(3);

db.表名/集合名.find().skip(1).limit(3);

# 更新是要有条件的,没有条件在数据库层面来讲是可以更新的,但是实际是没有对应的业务需求

# 只修改单条文档
db.表名/集合名.updateOne({key:value},{$set:{key:value}})
# 修改符合条件所有文档数据
db.表名/集合名.updateMany({key:value},{$set:{key:value}})
## 如果上述两个方法的条件一致,并且有多个符合条件的,那么:
# updateOne,不管有多少个符合条件的只修改第一个
# updateMany,有多少改多少

# 字段的值的`自增和自减`
db.表名/集合名.updateOne({key:value},{$inc:{key:1}})		// increments,自增
db.表名/集合名.updateMany({key:value},{$inc:{key:1}})
db.表名/集合名.updateOne({key:value},{$inc:{key:-1}})		// decrements
db.表名/集合名.updateMany({key:value},{$inc:{key:-1}})
# 自增是整数,自减是负数
# 更新和删除操作允许不写条件,但是不能不写

# 删除单条文档

db.表名/集合名.deleteOne({ key: value })

# 删除符合条件多条文档

db.表名/集合名.deleteMany({key: value})

# 删除全部数据(慎用)

db.表名/集合名.deleteMany({})

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-10-15 11:51:47  更:2021-10-15 11:53:35 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 1:00:55-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码