• 【MongoDB】MongoDB数据库的基础使用,特殊情况以及Mongoose的安装和创建流程(含有Mongoose固定版本安装)


    MongoDB的比较运算符

    • KaTeX parse error: Expected '}', got 'EOF' at end of input: …tion.find({元素:{lt:数值}})
    • KaTeX parse error: Expected '}', got 'EOF' at end of input: …tion.find({元素:{gt :数值}})
    • KaTeX parse error: Expected '}', got 'EOF' at end of input: …tion.find({元素:{gte:数值}})
    • KaTeX parse error: Expected '}', got 'EOF' at end of input: …tion.find({元素:{lte:数值}})
    • KaTeX parse error: Expected '}', got 'EOF' at end of input: …tion.find({元素:{ne:数值}})
    • 区间判断(可以传入多个条件)
      • db.collection.find({元素:{ g t : 数值 1 , gt:数值1, gt:数值1,lt:数值2}})
      • 表示大于数值1并且小于数组2
    • 多条件区间判断
      • db.collection.find({$or:[{元素:数据1},{元素:数据2},…]})
      • 表示判断元素满足数据1的情况或是满足数据2的情况

    MongoDB查看固定数据

    • 在使用时,-绝对不能执行不带条件-的查询

    • 查看集合前10条数据

      • db.collection.find().limit(10);
    • 查看11-20条数据

      • skip()用于跳过固定条数的数据
      • db.collection.find().skip(10).limit(10);
    • 分页固定公式

      • skip((页码-1)*每页固定的条数).limit(每页固定的条数);
    • 注意:

      • MongoDB会自动的调整skip和limit的顺序

    MongoDB查找特殊情况

    • 在直接使用find()方法进行查找时返回的是一个数组,无法获取到需要查找的值,即可使用[0]或是findOne()方法进行查找
    • 当两个集合中相同意思的编码不一致时(在数据属性较多的情况下不好查找,所以尽量的在创建集合时让编码一致),创建一个变量将值进行接收,在另一个集合中进行查找时使用该变量
    • 在查询时如果数据没有正确的出现,检查查询条件的数据类型,可能是数据类型不一致导致的结果异常
    • 当查询时只想查找个别数据时,可以在第二个参数的位置来设置查询结果的投影(使用投影时1表示显示,0表示不显示,_id默认显示)
      • db.collection.find({},{元素1:1,元素2:0,…})

    MongoDB对数值进行修改(增加或是减少)

    • $inc增加(减少)数值(increment)
    • db.collection.updateMany({条件},{$inc:{修改内容}})

    MongoDB对于数据进行排序操作

    • MongoDB默认的是使用_id进行排序
    • 可以使用sort()方法需要传递一个对象来指定文档的排序规则(1为升序排列,-1表示降序排列),也可以传递多个对象
      • db.collection.find().sort(元素1:1,元素2:-1,…);
      • 先使用元素1进行升序排序,当元素1相同时,在对元素2进行降序排序

    Mongoose

    • 使用步骤:
      • 在终端中输入命令 npm i mongoose@x.x.x(版本号)
      • 链接数据库
      • 创建约束Schema
      • 创建模块Model

    注意

    • limit() skip() sort()可以以任意顺序进行编写
  • 相关阅读:
    Elasticsearch实战(七)---BestFields MostFields CrossFields 多字段搜索策略
    如何使用Portainer创建Nginx容器并搭建web网站发布至公网可访问【内网穿透】
    Netty入门--传统IO与NIO详解
    理解http中cookie!C/C++实现网络的HTTP cookie
    vue中echart-gl 3D地图纹理实例
    SpringBoot 配置进阶
    uniapp h5使用原生的input标签
    基于YOLOv5的钢材表面缺陷检测
    【方案】基于视频与AI智能分析技术的城市轨道交通视频监控建设方案
    东北大学《复合材料学》——关于组成复合材料的各部分的浸润性与相容性的探讨
  • 原文地址:https://blog.csdn.net/ASW262623/article/details/126040011