MongoDB的基本使用 – 纪宇

MongoDB的基本使用 – 纪宇MongoDB简介 基于分布式文件存储的开源数据库系统 将数据存储为一个文档,文档类似于Json格式 MongoDB进入与退出 进入:mongo 退出:exit 库级操作 显示所有库: show db

MongoDB简介

  • 基于分布式文件存储的开源数据库系统
  • 将数据存储为一个文档,文档类似于Json格式

MongoDB进入与退出

  • 进入:mongo
  • 退出:exit

库级操作

  • 显示所有库: show dbs
  • 切换/创建数据库: use 数据库名称
  • 查看所在库: db
  • 删除库:db.dropDatabase() — 切换到要删除的数据库里进行删除

集合操作

  • 显示当前数据库的集合: show collections
  • 创建集合: db.createCollection( “集合名称” )
  • 删除集合: db.集合名称.drop() — 返回 true 或 false

文档操作

添加文档(数据)     db.集合名称.insert(document)

  • 每一条数据,就是一个document,就是一条json
  • 添加文档时,如果不指定_id参数,MongoDB会为文档分配一个唯一的ObjectId
    • 例: db.student.insert({“_id”:1, name:”xiaoming”, age:18})
  • 添加多条文档
    • 例: db.student.insert( [ { } , { } , … ] )

删除文档(数据)     db.集合名称.remove(<query>, {justOne:

})

  • 删除集合中所有的文档:db.table.remove( {} )
  • 删除集合中满足条件的所有文档:db.table.remove({sex: “男”})
  • 只删除集合中满足条件的第一条文档: { justOne: true }
    • 例: db.table.remove({sex:”男”}, { justOne:true} )

修改文档(数据)     db.集合名称.update(<query>, <update>, {multi:<boolean>})

  • 修改一条数据: db.table.update({name:”xiaoming”}, {age:20})–(只有age,没有name了,整条数据变成<update>里的内容)
  • 指定属性修改: { $set: {age:20} }
    • 例: db.table.update({name:”xiaoming”}, {$set: {age:666, sex: “xx”}} )
  • 更新集合中所有满足条件的文档: { multi: true }
    • 例: db.table.update({sex:”男”}, {$set:{sex:”女”}}, { multi:true} )

查询文档(数据)     db.集合名称.find([conditions])

  • 查看集合中全部数据: db.student.find()
  • 格式化显示: db.student.find().pretty()
  • 查看满足条件的数据: db.student.find({name:”xiaoming”})

噩梦条件

  • and条件
    • {$and:[{expression1}, {expression1}, …] }
  • or条件
    • { $or : [ { } , { }, …] }
  • and和or混用
    • db.table.find( {$or:[ {$and:[{sex:”女”}, {age:18}]} , {$and:[{sex:”男”}, {age:{$gt:18}}]} ] } )
    • db.table.find( { $or : [ { $and:[ { } , { } ] } , { $and:[ { } , { } ] } ] } )
  • 操作符
    • $ne:不等于
    • (gt :)gt
    • $lt :小于
    • $gte:大于等于
    • $lte :小于等于
    • 例:db.user.find( { “age” : {“$ne”: 45 } } )

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/10786.html

(0)
上一篇 2022-12-21
下一篇 2022-12-21

相关推荐

  • Python Web开发之Django与Flask

    Python Web开发之Django与Flask随着互联网的快速发展,Web开发已成为现代编程领域中最热门的领域之一。在众多的Web开发框架中,Python的Django与Flask备受推崇,广受开发者欢迎。本文将从多个方面对Python Web开发之Django与Flask进行详细的阐述。

    2024-04-20
    17
  • python-sql语句集体更改数据

    python-sql语句集体更改数据字段的批量替换 update table set 字段A=replace(字段A,’jpg’,’png’); 批量拼接字符串到某字段 update 表名 set 字段A = concat( 字段A …

    2023-03-30
    109
  • windows平台的分布式微服务解决方案(4)-「建议收藏」

    windows平台的分布式微服务解决方案(4)-「建议收藏」本文讲述的数据库读写分离的实现方式,是基于前述“数据库的负载均衡”这篇文章的内容发展而来,请先对其阅读参考。 在某些大型应用系统中,往往需要把数据库的“读操作”与“写操作”分为两个数据库(甚至两组数据

    2023-05-01
    113
  • clickhouse partition by_clickhouse删除和更新

    clickhouse partition by_clickhouse删除和更新UniqueMergeTree 开发的业务背景 首先,我们看一下哪些场景需要用到实时更新。 我们总结了三类场景: 第一类是业务需要对它的交易类数据进行实时分析,需要把数据流同步到 ClickHouse

    2023-05-20
    94
  • 提高Python编程效率:使用break和continue语句优化循环操作

    提高Python编程效率:使用break和continue语句优化循环操作a href=”https://www.python100.com/a/sm.html”font color=”red”免责声明/font/a a href=”https://beian.miit.gov.cn/”苏ICP备2023018380号-1/a Copyright www.python100.com .Some Rights Reserved.

    2024-02-10
    53
  • Python模块导入的优雅方式

    Python模块导入的优雅方式在Python开发过程中,模块导入是必不可少的,但是不同的导入方式会影响代码的可读性、维护性、性能等。本文将通过多个方面来介绍Python模块导入的优雅方式,并给出相应的代码示例。

    2023-12-29
    66
  • Python中dropna的用法

    Python中dropna的用法在数据分析和处理过程中,经常会遇到数据缺失的情况,这时候就需要使用dropna方法来删除缺失值。

    2024-04-27
    16
  • DDM实践系列丨分布式数据库中间件使用经验分享

    DDM实践系列丨分布式数据库中间件使用经验分享最近公司新项目使用了华为云的DDM分布式数据库中间件服务,通过一段的时间的使用感觉还不错。近段时间发现有许多小伙伴也准备去使用这个服务,所以为大家分享一下使用创建DDM服务的经验,帮助小伙伴们少走弯…

    2023-04-06
    109

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注