我有一个参考集合,其中包含多个文档,如
"_id": ObjectId('565555ef4ee29e068f61dd75'),
"referenceId": "565555ef4ee29e068f61dd74",
"refName": "abc",
}
"_id": ObjectId('565555ef4ee29e068f61dd75'),
"referenceId": "565555ef4ee29e068f61dd75",
"refName": "def",
}
"_id": ObjectId('565555ef4ee29e068f61dd75'),
"referenceId": "565555ef4ee29e068f61dd76",
"refName": "abc",
}
是否有可能使用java驱动程序在where或in子句中实现mongodb distinct?
例如:select distinct refName from collection where referenceId in [565555ef4ee29e068f61dd74,565555ef4ee29e068f61dd75,565555ef4ee29e068f61dd76]
。我有多个referenceId' s我应该从中获取唯一的refName。我怎样才能做到这一点?提前谢谢。
答案 0 :(得分:0)
您是否已经尝试过这种方式?
您应该能够检查equals
条件:
DBCollection collection = db.getCollection("collection");
DBObject obj = new BasicDBObject("referenceId", new BasicDBObject("$eq", "565555ef4ee29e068f61dd74"));
List result = collection.distinct("refName", obj);
以同样的方式,您可以检查in
。