정의
배열 의 첫 번째 요소를 반환합니다.
참고
명확화
이 페이지에서는 배열 의 첫 번째 요소를 반환하는 표현식 으로 사용되는 $first에 대해 설명합니다.
다음과 같은 다른 컨텍스트에서도 $first를 사용할 수 있습니다.
$first (accumulator), 각 그룹 의 첫 번째 값을 반환하기 위해 그룹화에 사용됩니다.$first (window function)는$setWindowFields단계에서 창 첫 번째 문서 에 대한 값을 반환하는 데 사용됩니다.
구문
{ $first: <expression> }
<expression> 은 배열 로 평가되어야 합니다.
행동
피연산자 표현식 배열 로 평가되면
$first는 해당 배열 의 첫 번째 요소를 반환합니다.배열 비어 있으면
$first은null을 반환합니다.표현식
null로 평가되거나 누락된 필드 참조하는 경우$first은null를 반환합니다.
예시
이 페이지의 예제에서는 sample_mflix 데이터 세트의 데이터를 사용합니다. 이 데이터 세트를 자체 관리형 MongoDB deployment 에 로드하는 방법에 대한 자세한 내용은 샘플 데이터 세트 로드를 참조하세요. 샘플 데이터베이스를 수정한 경우 이 페이지의 예제를 실행 하려면 데이터베이스를 삭제하고 다시 만들어야 할 수 있습니다.
다음 예시 $first를 사용하여 각 영화에서 가장 많이 청구된 배우를 반환합니다. sample_mflix 데이터 세트에서 cast 배열 행위자를 청구 순서대로 나열하므로 첫 번째 요소는 가장 많이 청구된 행위자입니다.
db.movies.aggregate( [ { $match: { title: { $in: [ "The Godfather", "Pulp Fiction", "Forrest Gump" ] } } }, { $addFields: { topBilledActor: { $first: "$cast" } } }, { $project: { _id: 0, title: 1, cast: 1, topBilledActor: 1 } }, { $sort: { title: 1 } } ] )
이전 파이프라인의 경우:
$match세 개의 특정 영화에 대한 필터.$addFields를$first와 함께 사용하면cast배열 의 첫 번째 요소를 포함하는 새 필드topBilledActor가 생성됩니다.$project는 출력에title,cast및topBilledActor필드만 포함합니다.$sort결과를 제목별로 정렬합니다.