今天帮同事跑数据,写的js代码有点复杂,网上找了半天,看见一个网页这么说

select DISTINCT last_name from users db.users.distinct(‘last_name’) 去掉重复值

但是没法进行query查询了,无奈之下,去找新的方法,印象中,mongo的MapReduce可以解决,就去Mongo官方查去了。关于订单求每个用户消费的总和,且状态都是A的记录。

基于此,写了一个uv的统计代码如下:

运行结果如下:

 

我们运行后,返回的文档,其中键“counts”为一个内嵌文档,我们先说一下这个内嵌文档中各个键的含义:

1 “input” : 在整个过程发送到“map”函数的文档个数,即“map”函数执行的次数

2 “emit” : 在整个过程,“emit”函数执行的次数

3 “reduce” : 在整个过程,“reduce”函数执行的次数

4 “output” : 最终在目标集合中生成的文档数量