• MongoDB的简单操作


    一.  MongoDB的启动

      1. 启动MongoDB服务

        mongod --dbpath d:data  # 数据库存放路径, 模式c:data

        mongod --install        # 安装windows服务

        mongod --remove        # 卸载windows服务

      2. 客户端连接

        mongo

    二. MongoDB的增删改查

      1. 增

        db.tablename.insertOne({})      插入一条数据

        db.tablename.insertMany([{}, {}])    插入多条数据

      2. 删

        db.tablename.deleteOne({})      删除符合条件的第一条数据

        db.tablename.deleteMany({})       删除符合条件的所有数据

      3. 改

        db.tablename.updateOne({}, {"$set": {}})  修改符合第一个参数条件的第一条数据, 改为第二个参数内容

        db.tablename.updateMany({}, {"$set: {}"})  修改符合第一个参数条件的所有数据, 改为第二个参数内容

      4. 查

        db.tablename.findOne({})        查询符合条件的第一条数据

        db.tablename.find({})          查询符合条件的所有数据

    三. MongoDB的数据类型 

      ObjectId :Documents 自动生成的 _id

      _id:ObjectId("5cb69a23815ea7295f8bad43") 自动生成的 json数据中不包含ObjectId类型 id类型uuid

      String: 字符串,必须是utf-8

      Boolean: 布尔值,true 或者false (这里有坑哦~在我们大Python中 True False 首字母大写)

      Integer: 整数 (Int32 Int64 你们就知道有个Int就行了,一般我们用Int32)

      Double: 浮点数 (没有float类型,所有小数都是Double)

      Arrays: 数组或者列表,多个值存储到一个键 (list哦,大Python中的List哦)

      Object: 深度<=4 如果你学过Python的话,那么这个概念特别好理解,就是Python中的字典,这个数据类型就是字典

      Null: 空数据类型 , 一个特殊的概念,None Null

      Timestamp: 时间戳 通常不用这个数据类型 如果存储时间 Double

      Date: 存储当前日期或时间unix时间格式 (我们一般不用这个Date类型,时间戳可以秒杀一切时间类型)

    四. MongoDB的$关键字

      1. 数学比较符(gt, lt, ne...)

        db.tablename.find({"age" : {"$gt": 50}})    年龄大于50的

      2. 查询关键字(in, or, and, all)

        db.tablename.find({"age": {"$in": [10, 20]}})        年龄为10或者20的

        db.tablename.find({"$or": [{"age": 10}, {"name": "xxx"}]})  年龄为10或者名字为xxx的

        db.tablename.find({"hobby": {"$all": ["x", "xx"]}})      查询子集

      3. $关键字的特殊用法

        db.tablename.updateOne({hobby:"娟儿"},{$set:{"hobby.$":"小圈儿"}})  存储符合条件元素的下标索引

    五. 修改器 

    $set    -  强制替换覆盖

      {$set:{name:123}}

    $unset   - 强制删除字段

      {$unset:{name:1}}

    $inc     - 引用增加, 原有数值基础上增加 1

      {$inc:{age:1}}

    $push append 在array中追加

      db.users.update({name:"AlexDSB"},{$push:{hobby:"特斯垃圾"}})

    $pushAll extend 在array中追加列表中的所有元素

      db.users.update({name:"AlexDSB"},{$pushAll:{hobby:["22寸轮毂","V8","欧林斯"]}})

    $pull remove 在array中删除一个元素

      db.users.update({name:"AlexDSB"},{$pull: {hobby:"V8"}})

    $pullAll 在array中删除一堆元素

      db.users.update({name:"AlexDSB"},{$pullAll: {hobby:["小敏","芙蓉姐姐"]}})

    $pop pop 删除第一个 -1 或最后一个 1 的值

      db.users.update({name:"AlexDSB"},{$pop: {hobby:1}})

    六. 查询结果的显示

      1. sort排序

        db.tablename.find().sort({"_id": -1})

      2. skip跳过, 跳过几条数据再显示

        db.tablename.find().skip(num)

      3. limit限制, 限制几条数据

        db.tablename.find().limit(num)

      4. 优先级,分页

        先排序, 再跳过, 最后限制

        db.tablename.find({}).sotr(_id:-1).limit(num).skip((page-1)*num)

    七. pymongo模块的使用

      1. 导入模块

        from pymongo import MongoClient

      2. 创建一个客户端对象

        mc = MongoClient()    # 默认host=localhost, port=27017

      3. 指定库

        db = mc["databasename"]

      4. 操作库

        db.tablename.find()

  • 相关阅读:
    指针的引用
    引用的基础知识
    const的基础用法
    解决'fopen':this function or variable may be unsafe先关问题的方法
    C++类中不写成员函数易犯错模型
    PCB接地设计宝典:ADI资深专家总结的良好接地指导原则
    电路板级的电磁兼容性设计
    自然对流仿真设置
    Pspice 原理图以及仿真图 输出到 word
    信号完整性常见问题
  • 原文地址:https://www.cnblogs.com/q767498226/p/11094422.html
Copyright © 2020-2023  润新知