10

我正在使用 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:{}}

其中 latitude 是有差异的字段的名称。

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

4

1 回答 1

7

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

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

可以在此处此处找到一些本机 javascript 差异函数

PS你也可以像这样从shell加载一些第三方js库:

load("D:\difference.js")

希望这有帮助。

于 2013-06-24T20:27:30.003 回答