Mongodb MapReduce - monexport缺失的列值



对Mongodb和MapReduce非常陌生,但喜欢我能用它做的事情,并且大部分都很好。然而,我在将MapReduce的结果导出到CSV时遇到了麻烦。

我是这样做的:

var mapFunction1 = function() {
                       emit({isrc: this.isrc, country: this.country}, this.amount_payable);
                   };

var reduceFunction1 = function(keyIsrc, valuesAmountPayable) {
                        return Array.sum(valuesAmountPayable);
                    };
db.sales.mapReduce(
        mapFunction1,
        reduceFunction1,
            { out: "sales_with_total_by_country_and_isrc" }
                )
db.sales_with_total_by_country_and_isrc.find()

当我运行上面的查找时,我可以看到我想要的结果,isrc, country和Values都存在。

我像下面这样运行我的导出,正如我所说,它运行正常,所有列都存在,但我只有值列中的值,而不是ISRC或Country。

mongoexport --csv -d test -c sales_with_total_by_country_and_isrc -q '{value: {$ne: 0}}' -f "isrc","country","value" -o sales_with_total_by_country_and_isrc.csv

我做错了什么?据我所知,我正在以正确的方式传递我想要使用-f导出的字段。

好吧,我自己想出来的。

As,结果集合如下:

{ "_id" : { "isrc" : "", "country" : "AE" }, "value" : 0.391081 }

我只需要在我的mongoexport调用中调用-f "_id.isrc","_id.country","value"

相关内容

  • 没有找到相关文章