我有一个参考馆藏,其中包含多个文档,例如
"_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?
例如:
select distinct refName from collection where referenceId in [565555ef4ee29e068f61dd74,565555ef4ee29e068f61dd75,565555ef4ee29e068f61dd76]
。我有多个referenceId,我应该从中获得唯一的refName。我怎样才能做到这一点?提前致谢。 最佳答案
您已经尝试过这种方式吗?
您应该能够检查equals
条件:
DBCollection collection = db.getCollection("collection");
DBObject obj = new BasicDBObject("referenceId", new BasicDBObject("$eq", "565555ef4ee29e068f61dd74"));
List result = collection.distinct("refName", obj);
同样,您将可以检查
in
。关于java - mongodb与Java中的where子句不同,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34355687/