2016-12-01 5 views
0

$ arrayElemAt MongoDBバージョン3.2で新しく追加されました。

db.users.aggregate([ 
{ 
$project: 
    { 
    name: 1, 
    first: { $arrayElemAt: [ "$favorites", 0 ] }, 
    last: { $arrayElemAt: [ "$favorites", -1 ] } 
    } 
} 

])

答えて

2

DATAMONGO-1536Ingallsリリースの春データのMongoDBに$arrayElemAtおよびその他の欠落集計演算子を追加しようとしています。一方で、あなた自身が提供する任意の操作を作成するためにAggregationExpressionを提供することができます。次のような上記のものを

は、トリックを行います。

project("name") // 
    .and(context -> new BasicDBObject("$arrayElemAt", asList("$favorites", 0))).as("first") 
    .and(context -> new BasicDBObject("$arrayElemAt", asList("$favorites", -1))).as("last"); 
関連する問題