我在MongoDB有两个收藏。我使用jmeter中的jsr223采样器在MongoDB上执行查找操作。
数据库名称:
数据库
集合名称:
CY1,CY2
在MongoDB中执行查找聚合的groovy代码。
c_1.insert(new BasicDBObject(["id" : 1, "name" : "abc", "lastName" : "kumar", "companyId": 10]))
c_2.insert(new BasicDBObject(["id" : 10, "companyName" : "Microsoft", "numEmployee" : 100 ]))
// build the $lookup operations
DBObject lookupFields = new BasicDBObject("from", "c_2");
lookupFields.put("localField", "companyId");
lookupFields.put("foreignField", "id");
lookupFields.put("as", "companydoc");
DBObject lookup = new BasicDBObject("$lookup", lookupFields);
// build the $project operations
DBObject projectFields = new BasicDBObject("name", 1);
projectFields.put("lastName", 1);
projectFields.put("companyId", 1);
projectFields.put("companyName", "$c_2.companyName");
DBObject project = new BasicDBObject("$project", projectFields);
List<DBObject> pipeline = Arrays.asList(lookup, project);
AggregationOutput output = c_1.aggregate(pipeline);
for (DBObject result : output.results())
{
System.out.println(result);
}
错误:
响应消息:javax.script.scriptException:groovy.lang.MissingPropertyException:no such属性:查找类:script79