MongoDB超全语法大全

这篇具有很好参考价值的文章主要介绍了MongoDB超全语法大全。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

MongoDB 安装教程

一、介绍

mongodb数据库是非关系数据库,mongodb中没有表的概念,数据都是存储在集合中

  1. 易扩展: NoSQL数据库种类繁多, 但是⼀个共同的特点都是去掉关系数据库的关系型特性。 数据之间⽆关系, 这样就⾮常容易扩展
  2. ⼤数据量, ⾼性能: NoSQL数据库都具有⾮常⾼的读写性能, 尤其在⼤数据量下, 同样表现优秀。 这得益于它的⽆关系性, 数据库的结构简单
  3. 灵活的数据模型: NoSQL⽆需事先为要存储的数据建⽴字段, 随时可以存储⾃定义的数据格式。 ⽽在关系数据库⾥, 增删字段是⼀件⾮常麻烦的事情。 如果是⾮常⼤数据量的表, 增加字段简直就是⼀个噩梦
二、数据类型
  1. Object ID:文档ID
  2. String:字符串 该属性是最常用的数据类型,并且为一个有效的UTF-8字符集
  3. Boolean:存储一个布尔值,true或者false
  4. Integer:整数 可以是32位或64位,取决于服务器
  5. Double:浮点值
  6. Arrays:数组或列表,多个值存储到一个键
  7. Object:用于嵌入式的文档,即一个值为一个文档
  8. Null:Null值
  9. Timestamp: 时间戳 表示1970-1-1到现在的总秒数
  10. Date:存储当前日期或时间的UNIX时间格式
三、登录(使用可视化工具,可忽略)
mongosh
mongosh -u 用户名 -p 密码 --port 端口号 --host ip 数据库名
mongosh ip:port/数据库 -u 用户名 -p 密码
mongosh --port=27017 --host=127.0.0.1
四、DadaBase基础命令
查看当前数据库: db
查看所有的数据库: show dbs
切换数据库,数据库不存在会创建数据库: use db_name
删除当前数据库: db.DropDatabase()
查看集合:show collections
获取集合,集合不存在则创建集合:db.getCollection(collection_name)
创建用户密码:db.createUser({
  user: 'admin',  // 用户名
  pwd: '123456',  // 密码
  roles:[{
    role: 'root',  // 角色---超级管理员才可以使用该角色
    db: 'admin'  // 数据库
  }]
})
显示当亲库下的用户:show users 
删除用户:db.dropUser(useName) 或者 db.collection.users.remove({user:useName})

'''
用户角色:
read:允许用户读取指定数据库 
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限 
'''
五、操作符

MongoDB超全语法大全
MongoDB超全语法大全
MongoDB超全语法大全

六、集合创建,类似mysql中的表
  1. db.createCollection(name, options) 创建集合:db.createCollection(‘test’)
  • name: 要创建的集合名称
  • options: 可选参数, 指定有关内存大小及索引的选项
    MongoDB超全语法大全
  1. db.collection.drop() 删除集合:db.test.drop()
七、创建数据
  1. db.collection.insert(document | [[document], options) 若插入的数据主键已经存在,会抛异常,不保存当前数据
  • document:创建的数据,格式键值对:{name:‘张三’}
  • options: 可选参数
    MongoDB超全语法大全
  1. db.collection.save(document, options) 如果 _id 主键存在则更新数据,如果不存在就插入数据
  2. db.collection.insertMany([document], options) 用于向集合插入一个多个文档
  3. db.collection.insertOne(document, options) 用于向集合插入一个新文档
八、更新数据
  1. db.collection.update(query,update,options) 根据query条件,更新数据为update
  • query : update的查询条件,类似sql update查询内where后面的,格式键值对:{name:‘张三’}
  • update : update的对象和一些更新的操作符(如 , , ,inc…)等,也可以理解为sql update查询内set后面的,格式键值对:{name:‘李四’,age:20}
  • options: 可选参数
    MongoDB超全语法大全
  1. db.collection.updateOne(query,update,options) 更新一条数据,update必须加操作符,如:{$set:{name:‘王五’}}
  2. db.collection.updateMany(query,update,options) 更新多条数据,update必须加操作符,如:{$set:{name:‘王五’}}
  3. db.collection.replaceOne(query,replaceDocument,options) 根据筛选器替换集合中的单个文档
九、删除数据
  1. db.collection.remove(query, options) 根据query条件,删除数据
  • query : update的查询条件,类似sql update查询内where后面的,格式键值对:{name:‘张三’}
  • options: 可选参数
    MongoDB超全语法大全
  1. db.collection.deleteMany(query) 删除多条数据
  2. db.collection.deleteOne(query ) 删除一条数据
十、获取数据
  1. db.collection.find(query, projection)
  • query : update的查询条件,类似sql update查询内where后面的,格式键值对:{name:‘张三’},不传查全部
  • projection :可选,使用投影操作符指定返回的键。查询时返回文档中所有键值, 只需省略该参数即可(默认省略)
  1. db.collection.findOne(query, projection) 查找一条数据
  2. db.collection.findAndModify(document) 查找多条数据并修改
  3. db.collection.findOneAndDelete(query, options) 查找一条数据,并删除
  4. db.collection.findOneAndUpdate(query, update, options) 查找一条数据并更新,db…collection.findOneAndUpdate({name:‘test0’},{$set:{name:‘test’,age:21}})
  5. db.collection.findOneAndReplace(query, replaceDocument, options) 查找一条数据并替换 db.test_data.findOneAndReplace({name:‘test’},{name:‘test0’,age:21})
  6. db.collection.find(query, projection).limit(number) 读取指定数量的⽂档
  7. db.collection.find(query, projection).skip(number) 读取除number前面的全部文档
  8. db.collection.find(query, projection).sort(number) 排序,db.collection.sort({age: -1}):1为升序,-1为降序
  9. db.collection.find(query, projection).count(query) 统计数量,query可省略
  10. db.collection.find(query, projection).explain(‘executionStats’) 获取查询数据所花费的时间
  11. db.collection.aggregate({管道:{表达式}}) 聚合(aggregate)是基于数据处理的聚合管道
  12. db.collection.distinct(col_name,query) 数据去重
十一、索引

索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录文章来源地址https://www.toymoban.com/news/detail-475161.html

  1. db.collection.createIndex(keys, options) 创建索引
  • key:为你要创建的索引字段,1 按升序创建索引、 -1按降序来创建索引,{name: 1}
  • options:可选参数
    MongoDB超全语法大全2. db.collection.ensureIndex({name: 1}) 建立索引
  1. db.collection.getIndexes() 获取索引
  2. db.collection.totalIndexSize() 查看集合索引大小
  3. db.collection.dropIndexes() 删除集合所有索引
  4. dbcollection.dropIndex(‘索引名称’) 删除集合指定索引

到了这里,关于MongoDB超全语法大全的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 后端Windows软件环境安装配置大全[JDK、Redis、RedisDesktopManager、Mysql、navicat、VMWare、finalshell、MongoDB...持续更新中]

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【宝藏入口】。 为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章

    2024年02月14日
    浏览(95)
  • Python 语法及入门 (超全超详细) 专为Python零基础 一篇博客让你完全掌握Python语法

    前言: 本篇博客超级详细,请尽量使用电脑端结合目录阅读 阅读时请打开右侧 “只看目录”  方便阅读 1989 年,为了 打发 圣诞节假期,Gudio van Rossum吉多· 范罗苏姆(龟叔)决心开发一个新的解释程序( Python 雏形) 1991 年,第一个 Python 解释器诞生 Python 这个名字,来自

    2024年02月08日
    浏览(51)
  • MongoDB安装教程—Ubuntu

    为啥用MongoDB,问就是客户要求。 为啥用Ubuntu,问就是客户只有Ubuntu的机器。 操作系统: Ubuntu 22.04.1 LTS (GNU/Linux 5.19.0-41-generic x86_64) 不同版本系统差异不同,其他版本系统未测试。 注:如果提示错,无五公钥等,先执行 sudo apt-get install gnupg 安装依赖库。 先查看系统Codename:

    2024年02月07日
    浏览(44)
  • windows安装mongodb教程

    MongoDB 是一款流行的 NoSQL 数据库,它具有高可扩展性和高性能。在 Windows 平台上安装 MongoDB 很简单,本文将介绍如何在 Windows 上安装和配置 MongoDB。 在官网上下载 MongoDB 的 Windows 安装程序。下载地址为 https://www.mongodb.com/try/download/community。 双击下载的安装程序,进入安装向导

    2024年02月11日
    浏览(39)
  • 一款基于分布式文件存储的数据库MongoDB的介绍及基本使用教程

    MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 在高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 将数据存储为一个文档,数据结构由键值(key=value)对组成。MongoDB 文档类

    2024年01月17日
    浏览(46)
  • MongoDB安装(新版本保姆级教程)

    MongoDB 是一个文档数据库,旨在简化开发和扩展。 本篇文章介绍 MongoDB 数据库及其 可视化工具 MongoDB Compass 的详细教程 (window10操作系统) 首先进入官网(社区版) ,在对应页面选择需要安装的版本 (这里下载当前适合版本号) 传送门 因为选择下载的是 .zip 文件,直接跳过安装,

    2024年02月06日
    浏览(37)
  • MongoDB初体验-安装使用教程2023.7

    前言:博主第一次接触MongoDB,看了一圈网上现有的教程,不是缺少细节就是有问题没交代清楚,特整理了一下自己安装运行的过程,从下载安装到开机自启,全程细节齐全、图文并茂、简单易懂。 下载地址: 官网下载传送门 ps:不需要翻墙不需要注册登录,打开网页就能下载

    2024年02月16日
    浏览(41)
  • Ubuntu上安装、使用MongoDB详细教程

    MongoDB是所有非关系型数据库中最像关系型数据库的一种存储技术,MongoDB中的数据结构是类似于JSON的BSON(Binary Json),这篇文章就详细介绍如何安装和使用MongoDB。 MongoDB和MySQL中的概念对应关系 MongoDB MySQL 数据库 数据库 表/集合 表 索引 索引 文档 表的行数据 在MongoDB官网下载

    2024年02月05日
    浏览(36)
  • AI 代码生成工具 Cursor 安装和使用介绍大全

    嘿,小伙伴们,听说你们要了解一款基于 AI 技术的代码生成工具 Cursor,让我们来一起看看如何安装和使用吧! Cursor 是一款基于 AI 技术的代码生成工具,它可以帮助开发人员自动生成代码,提高开发效率。下面是安装和使用 Cursor 的简要介绍: 官网地址:https://www.cursor.so/

    2024年02月02日
    浏览(49)
  • 【MongoDB系列】1.MongoDB 6.x 在 Windows 和 Linux 下的安装教程(详细)

    本文主要介绍 MongoDB 最新版本 6.x 在Windows 和 Linux 操作系统下的安装方式,和过去 4.x 、5.x 有些许不同之处,供大家参考。 进入官网下载 Mongodb 安装包,点此跳转,网站会自动检测当前操作系统提供最新的版本,和适合此平台的安装包: 除了 .msi 格式的安装包,还可以选择

    2024年02月10日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包