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 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> MongoDB 增删改查命令 -> 正文阅读

[大数据]MongoDB 增删改查命令

MongoDB 增删改查命令

MongoDB 菜鸟教程概念解析:https://www.runoob.com/mongodb/mongodb-databases-documents-collections.html
在这里插入图片描述

1.1 添加操作db.User.save({name:'zhangsan',age:21,sex:true})

向集合Collection中添加数据User属性

> db.User.save({name:'zhangsan',age:21,sex:true})
WriteResult({ "nInserted" : 1 })
> db.User.save({name:'lucy',age:18,sex:false})
WriteResult({ "nInserted" : 1 })
> db.User.save({name:'tom',age:19,sex:false})
WriteResult({ "nInserted" : 1 })

1.2 查询

1.2.1 查询所有 db.User.find()

> db.User.find()
{ "_id" : ObjectId("633ed32002a26f1c66c632e0"), "name" : "zhangsan", "age" : 18, "sex" : true }
{ "_id" : ObjectId("633eda6d32cf64478292df05"), "name" : "lucy", "age" : 18, "sex" : false }
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19, "sex" : false }

1.2.2 条件查询 db.User.find({age:19},{'name':1,'age':1})

条件查询:查询年龄等于19岁,显示姓名和年龄

> db.User.find({age:19},{'name':1,'age':1})
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19 }

1.3 指定字段排序db.User.find().sort({age:1})

在MongoDB中使用sort()方法对数据进行排序,sort()方法可以通过参数指定排序的字段,并使用1和-1来指定排序的方式,其中1为升序排列,而-1是用于降序排列。

> db.User.find().sort({age:1})
{ "_id" : ObjectId("633ed32002a26f1c66c632e0"), "name" : "zhangsan", "age" : 18, "sex" : true }
{ "_id" : ObjectId("633eda6d32cf64478292df05"), "name" : "lucy", "age" : 18, "sex" : false }
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19, "sex" : false }
> db.User.find().sort({age:-1})
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19, "sex" : false }
{ "_id" : ObjectId("633ed32002a26f1c66c632e0"), "name" : "zhangsan", "age" : 18, "sex" : true }
{ "_id" : ObjectId("633eda6d32cf64478292df05"), "name" : "lucy", "age" : 18, "sex" : false }

1.4 分页显示db.User.find().skip(0).limit(2)

在MongoD中使用limit()方法来读取指定数量的数据,skip()方法来跳过指定数量的数据

> db.User.find().skip(0).limit(2)
{ "_id" : ObjectId("633ed32002a26f1c66c632e0"), "name" : "zhangsan", "age" : 18, "sex" : true }
{ "_id" : ObjectId("633eda6d32cf64478292df05"), "name" : "lucy", "age" : 18, "sex" : false }
> db.User.find().skip(1).limit(2)
{ "_id" : ObjectId("633eda6d32cf64478292df05"), "name" : "lucy", "age" : 18, "sex" : false }
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19, "sex" : false }

1.5 查询条件in包含db.User.find({age:{$in:[18,20]}})

> db.User.find({age:{$in:[18,19]}})
{ "_id" : ObjectId("633ed32002a26f1c66c632e0"), "name" : "zhangsan", "age" : 18, "sex" : true }
{ "_id" : ObjectId("633eda6d32cf64478292df05"), "name" : "lucy", "age" : 18, "sex" : false }
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19, "sex" : false }
> db.User.find({age:{$in:[19]}})
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19, "sex" : false }
> db.User.find({age:{$in:[20]}})

1.7 统计查询到的数量db.User.find({age:{$gt:19}}).count()

> db.User.find({age:{$gt:19}}).count()
0
> db.User.find({age:{$gt:18}}).count()
1
> db.User.find({age:{$eq:18}}).count()
2

1.8 条件语句or或db.User.find({$or:[{age:19},{age:18}]})

> db.User.find({$or:[{age:19},{age:18}]})
{ "_id" : ObjectId("633ed32002a26f1c66c632e0"), "name" : "zhangsan", "age" : 18, "sex" : true }
{ "_id" : ObjectId("633eda6d32cf64478292df05"), "name" : "lucy", "age" : 18, "sex" : false }
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19, "sex" : false }
> db.User.find({$or:[{age:19},{age:20}]})
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19, "sex" : false }

1.9 修改数据update()

可直接用类似T-SQL条件表达式更新,或用Save()更新从数据库返回到文档对象。

修改数据库中姓名为zhangsan的age和sex字段的值
db.User.update({name:'zhangsan'},{$set:{age:100,sex:0}})

> db.User.find().skip(0).limit(3)
{ "_id" : ObjectId("633ed32002a26f1c66c632e0"), "name" : "zhangsan", "age" : 18, "sex" : true }
{ "_id" : ObjectId("633eda6d32cf64478292df05"), "name" : "lucy", "age" : 18, "sex" : false }
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19, "sex" : false }
> db.User.update({name:'zhangsan'},{$set:{age:100,sex:0}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.User.find().skip(0).limit(3)
{ "_id" : ObjectId("633ed32002a26f1c66c632e0"), "name" : "zhangsan", "age" : 100, "sex" : 0 }
{ "_id" : ObjectId("633eda6d32cf64478292df05"), "name" : "lucy", "age" : 18, "sex" : false }
{ "_id" : ObjectId("633edb6d32cf64478292df06"), "name" : "tom", "age" : 19, "sex" : false }

2.0 删除remove()

指定id删除: db.User.remove(id)
全部删除:db.User.remove({})

2.1 索引

  1. 索引通常能够极大的提高查询的效率,如果没有索引,MongoDB,在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录。
    这种扫描全集合的查询效率是非常低的,特别在处理大量的数据时,查询可以要花费几十秒甚至几分钟,这对网站的性能是非常致命的。
  2. 索引是特殊的数据结构,索引存储在一个易于遍历读取的数据集合中,索引是对数据库表中一列或多列的值进行排序的一种结构。

db.User.createIndex({‘name’:1})

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-10-08 20:48:45  更:2022-10-08 20:49:00 
 
开发: 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/23 5:58:53-

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