在MongoDB的入门教程的聚集和光标操作介绍

在MongoDB的入门教程的聚集和光标操作介绍
今天与大家分享mondb更有趣的知识,包括:聚集、光标。

1:聚合

常见的聚合操作与SQL Server相同,包括计数、区分、组、MapReduce。

计数

算是最简单的,最简单,最常用的聚合器,它的使用是完全一样的使用我们的C #伯爵。
不同的

这个操作相信大家也很熟悉,谁是指定的,谁也不能重复,直接在地图上。


这有一点复杂在mondb做组行动,但人们都很熟悉SQL Server组

可以看到,事实上,集团运作基本上形成一个K-V模型,类似于C #,好的词典,这种思维,

让我们看看如何使用组。

下面的例子是按年龄执行组操作,值是相应年龄的名称。

这是分组的关键,我们是来分组的。

初始化:每个组共享一个初始化函数,特别注意每个组,如这个年龄= 20的值列表,共享一个。

初始函数,年龄= 22也共享初始函数。

函数的第一个参数是当前文档对象,第二个参数是最后一个函数操作的累积对象,第一次。

{个人:{ } }始。多少文件,有多少次的减少将给美元。
有一种感觉,我们可以通过年龄看到相应的姓名人员,但有时我们可能有以下要求:

(1)想过滤掉一些年龄超过25的人员。

(2)有时人数组中有太多的人,我想添加一个计数属性来标记它。

对于上述需求,在组中做是好的,因为组有这两个可选参数:条件和终结。

条件:这是过滤条件。

完成:这是一个函数,当执行每一组文档时,它会触发更多的方法,然后将计数添加到每个集合中。
MapReduce

这是聚合函数中最复杂的一个,但是它越复杂,它就越复杂,它就越灵活。

MapReduce实际上是一种用于分布式计算的编程模型,其中有一个map函数和一个减函数。

(1)地图:

这称为映射函数,它调用发出(键,值),集合根据您指定的键映射组。

减少:

这称为简化函数,map分组后的数据将被分组。注意,减少(key,value)中的键是相同的。

钥匙发出,价值是集发射(值)后发出的分组,这里是很多{计数的阵列:1 })。

(3)MapReduce:

这是最后一次执行的函数,参数是map,减少,还有一些可选参数:
从图表中我们可以看到以下信息:

结果:商店的集合名;

输入的文档数量:传递给文档。

发出:调用此函数的次数。

减少:这个函数被调用的次数。

输出:返回文档结尾处的文档数。

最后,让我们来看看案例中的集合集合的名字
二:光标

在mondb光标是在C #我们所说的延迟有点相似,如:

var list = db.person.find();

针对这样的操作,列表实际上并没有亲自得到文档,但肯定了查询结构,当我们需要时它会被传递。

为立即或下一次加载,然后让光标逐行读取。在我们完成枚举之后,光标被销毁,然后我们通过列表获得它。

结果发现没有返回数据。
当然,我们的查询结构也可以使复杂的点,如分页、排序可以添加。

VaR单= db.person.find()。排序({的名字

这样的查询构造可以在需要执行的时候执行,大大提高了不必要的开销。

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部