2016-12-01 3 views
0

MongoDB 버전 3.2에서 새로운 $ arrayElemAt.

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"); 
: 다음과 같은 뭔가 위의 경우

트릭을 수행