随笔分类 -  数据库

摘要:1.Max的优化 如果没有索引,max需要检索所有行才能得出结果,这里可以通过建立索引的方式进行优化: 这样,再查询price的最大值就能迅速得出结果。 2.子查询的优化 下列子查询: 可以用join方法进行优化: 但是,如果vendors中含有重复的prod_id,则会返回重复的查询结果。因此,需 阅读全文
posted @ 2018-02-23 23:16 右威卫大将军 阅读(178) 评论(0) 推荐(0)
摘要:聚合是指对取出的数据进行一系列的处理和分析,具体操作用到aggregate方法和管道操作符。 下面列出常用的几种管道操作符: 1. $match 用于筛选记录: 2. $project 用于选择出想要的字段: 也可以进行重命名后显示,注意要将改名前的字段去掉: $project也可以接受表达式,如下 阅读全文
posted @ 2018-02-05 17:31 右威卫大将军 阅读(268) 评论(0) 推荐(0)
摘要:MongoDB的复制集具有自动容忍部分节点宕机的功能,在复制集出现问题时时,会触发选举相关的过程,完成主从节点自动切换.每个复制集成员都会在后台运行与复制集所有节点的心跳线程,在两种情况下会触发状态检测过程: 复制集成员心跳检测结果发生变化,比如某个节点挂了或者新增节点. 超过4s没有执行状态检测过 阅读全文
posted @ 2018-02-04 16:00 右威卫大将军 阅读(226) 评论(0) 推荐(0)
摘要:索引通过ensureIndex方法建立: 也可以建立复合索引: 一般而言,采用ensureIndex({排序键}, {查询键})的方式建立复合索引效率更高。比如,针对下列操作: 如采用age、name的方式建立索引,则搜索的文档很少(只检索age在20-29之间的记录),但是排序要花费大量时间。如采 阅读全文
posted @ 2018-02-02 23:06 右威卫大将军 阅读(243) 评论(0) 推荐(0)
摘要:一、基础 MongoDB不需要像关系型数据库那样需要显式创建数据库,可以直接使用use语句创建: 将文档插入集合中使用insert方法: 查找使用find或者findOne方法: 更新使用update方法,接受两个参数。第一个参数用于定位,第二个参数传递更新后的文档。在此之前需要用var方法取出原纪 阅读全文
posted @ 2018-02-02 17:04 右威卫大将军 阅读(219) 评论(0) 推荐(0)