我正在使用mongodb 2.4.4并且我想比较2个文档,然后仅使用mongo shell打印它们的差异.有没有办法比较它们?就像是:
db.collection.compare({first_doc: objectID("blablalba"), sec_doc: objectID("blalba2")})
Run Code Online (Sandbox Code Playgroud)
输出就像是
{diff1:{latitude:{first_doc:10.000, sec_doc:20.000}},diff2:{}}
Run Code Online (Sandbox Code Playgroud)
纬度是具有差异的字段的名称.
输出不需要完全相同,但提供相同的功能.谢谢
只需声明本机javascript函数,它可以以您需要的方式比较两个对象,然后编写如下代码:
obj1 = db.test.findOne({"_id" : ObjectId("5176f80981f1e2878e840888")})
obj2 = db.test.findOne({"_id" : ObjectId("5176f82081f1e2878e840889")})
difference(obj1, obj2)
Run Code Online (Sandbox Code Playgroud)
PS你也可以从shell加载一些第三方js libs:
load("D:\difference.js")
Run Code Online (Sandbox Code Playgroud)
希望这有帮助.