nest 您所在的位置:网站首页 nest文档 nest

nest

2023-06-18 00:25| 来源: 网络整理| 查看: 265

由于前面学习的nest框架的一些知识点在目前的需求中使用的比较少然后也还没有事件对自己起的项目做一个总结这里后端我们就两个比较实用的方法把。 1.指定select字段 由于我们查询mongo的时候,很多数据量是很多的,而select字段也是经常使用的,而我们的查询都是会使用query-helper.service封装的FilterAnd()方法去指定查询的条件,也可以使用FilterField()的方式去指定查询出来的字段,我们也可以查看一下这个方法 在这里插入图片描述 这里就是将filterField的数据放入select中,这样去查询mongo的时候去指定到所需要的字段。而这里我们也能看到GetParam是去查询前端穿过来的的数据,那这里只要有Fields这个字段也可以同样去限制它的指定字段,所以我们就可以在前端请求中 在这里插入图片描述 在请求参数中带上Fields。 2.创建索引以及命中索引 首先讲到这个的话,我们就得了解一下,为什么要使用索引,这里我们可以简单来理解就是索引就好比一本书的目录,有了索引就可以让我们的数据库可以在根据索引的‘指示’下更快的找到我们所需要额数据,减少数据库查询的压力。 这里我就举例一下我们mongo数据库比较常用的复合索引

db.LoginInfo.createIndex( { "CreateUserId" : 1, "LoginId" : 1 }, {background: true} )

而这句话的含义就是给LoginInfo这个表的CreateUserId和LoginId两个字段建立升序的索引,而background的含义是后台建立,因为在建立索引的时候会阻断mongo数据库的一个操作,所以我们将后台建立打开就可以避免这种情况发生。 那么如何查看我们所建立的索引是否成功呢

db.LoginInfo.getIndexes()

可以使用getIndexes()来查看我们所建立的索引 在这里插入图片描述 建立成功以后就是如何命中我们所建立的索引呢,指定一提的是复合索引只有在查询条件中带上前n个字段,拿上面的例子来说,使用LoginInfo是可以命中索引的,但是使用CreateUserId是无法命中的,我们可以使用.explain()来查看 在这里插入图片描述 在这里插入图片描述 最后,之前装新的电脑的时候就把一些必须的安装包给保存了一下,这里是链接 链接:https://pan.baidu.com/s/1ngck7PSCSUOYHPofUD2gxA 提取码:ezcn



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有