在MongoDB聚合管道中,如何将返回的字段投影到该值的数组中

时间:2018-01-23 17:16:56

标签: mongodb aggregation-framework mongodb-java

在MongoDB 3.6中,如果我使用java驱动程序并进行聚合,在匹配之后,如何将结果的特定字段投影到该类型的单元素数组中?例如,我的一个字段是一个字符串,我想创建一个单元素字符串数组,以便稍后我可以在该值和一个集合(这是结果中的另一个值)之间执行集合。

1 个答案:

答案 0 :(得分:0)

您可以尝试Projections.computed静态方法输出单值数组。

这样的东西
Bson bson = computed("fname", Arrays.asList("$value"));

验证

BsonDocument bsonDocument = bson.toBsonDocument(BsonDocument.class, MongoClient.getDefaultCodecRegistry());
System.out.print(bsonDocument.toString());// { "fname" : ["$value"] }