我在 mongodb 数据库中使用三个集合(员工、部门和位置)。我需要列出以“P”开头的城市中所有员工居住的部门。
我使用嵌套的 db.runCommand 创建了以下查询,该查询在 mongoDB 中运行良好。
db.Department.find({"id":{ $in: db.runCommand( {
// FInd distinct employee
distinct: "employee",
key:"department_id",
query: {$and:[{ "location_id":{$in: db.runCommand ( {
// FInd distinct Location
distinct: "Location",
key:"id",
query: {"city":{ "$regex": "P.*" }}}).values
// End - Location
}}
]}}).values
// End - employee
}}).limit(100)
如何使用 mongodb-java-driver 创建上述查询?