从mongo shell中找出mongoDB上2个文档之间的区别

时间:2013-06-24 12:56:41

标签: mongodb

我正在使用mongodb 2.4.4并且我想比较2个文档,然后仅使用mongo shell打印它们的差异。有没有办法比较它们?类似的东西:

db.collection.compare({first_doc: objectID("blablalba"), sec_doc: objectID("blalba2")})

,输出类似于

{diff1:{latitude:{first_doc:10.000, sec_doc:20.000}},diff2:{}}

其中纬度是具有差异的字段的名称。

输出不需要完全相同,但提供相同的功能。 感谢

1 个答案:

答案 0 :(得分:5)

只需声明可以按照您需要的方式比较两个对象的本机javascript函数,然后编写如下代码:

obj1 = db.test.findOne({"_id" : ObjectId("5176f80981f1e2878e840888")})
obj2 = db.test.findOne({"_id" : ObjectId("5176f82081f1e2878e840889")})
difference(obj1, obj2)

可以找到一些原生的javascript差异功能herehere

P.S。您还可以从shell加载一些第三方js库:

load("D:\difference.js")

希望得到这个帮助。