문서 메뉴
문서 홈
/
MongoDB 매뉴얼
/ / /

$reverseArray (애그리게이션)

이 페이지의 내용

  • 정의
  • 행동
  • 예제
$reverseArray

버전 3.4에 새로 추가되었습니다.

배열 표현식을 인수로 받아들이고 요소가 역순으로 포함된 배열을 반환합니다.

$reverseArray 에는 다음과 같은 연산자 표현식 구문이 있습니다.

{ $reverseArray: <array expression> }

인수는 배열로 해석되는 한 모든 유효한 표현식이 될 수 있습니다.

인수가 null 값으로 해석되거나 누락된 필드를 참조하는 경우 $reverseArraynull을 반환합니다.

인수가 배열 또는 null로 해석되지 않거나 누락된 필드를 참조하는 경우 $reverseArray는 오류를 반환합니다.

$reverseArray 인수가 빈 배열인 경우 빈 배열을 반환합니다.

인수에 하위 배열이 포함되어 있으면 $reverseArray는 최상위 배열 요소에서만 작동하며 하위 배열의 내용을 뒤집지 않습니다.

예시 [1]
결과
{ $reverseArray: { $literal: [ 1, 2, 3 ] } }
[ 3, 2, 1 ]
{ $reverseArray:
{ $slice: [ [ "foo", "bar", "baz", "qux" ], 1, 2 ] } }
}
[ "baz", "bar" ]
{ $reverseArray: null }
null
{ $reverseArray: { $literal: [ ] } }
[ ]
{ $reverseArray: { $literal: [ [ 1, 2, 3 ], [ 4, 5, 6 ] ] } }
[ [ 4, 5, 6 ], [ 1, 2, 3 ] ]
[1] 표의 예시에서는 리터럴 인수를 사용합니다. 리터럴 인수가 배열인 경우 구문 분석의 모호성을 방지하려면 리터럴 배열을 $literal 표현식으로 래핑하거나 인수 목록을 지정하는 외부 배열(예: [ [ 1, 2, 3 ] ])을 유지하여 리터럴 배열 [1, 2, 3]으로 전달해야 합니다.

users라는 이름의 컬렉션에 다음 문서가 포함되어 있습니다.

{ "_id" : 1, "name" : "dave123", "favorites" : [ "chocolate", "cake", "butter", "apples" ] }
{ "_id" : 2, "name" : "li", "favorites" : [ "apples", "pudding", "pie" ] }
{ "_id" : 3, "name" : "ahn", "favorites" : [ ] }
{ "_id" : 4, "name" : "ty" }

다음 예에서는 favorites 배열의 요소를 포함하는 배열을 역순으로 반환합니다.

db.users.aggregate([
{
$project:
{
name: 1,
reverseFavorites: { $reverseArray: "$favorites" }
}
}
])

이 연산은 다음과 같은 결과를 반환합니다.

{ "_id" : 1, "name" : "dave123", "reverseFavorites" : [ "apples", "butter", "cake", "chocolate" ] }
{ "_id" : 2, "name" : "li", "reverseFavorites" : [ "pie", "pudding", "apples" ] }
{ "_id" : 3, "name" : "ahn", "reverseFavorites" : [ ] }
{ "_id" : 4, "name" : "ty", "reverseFavorites" : null }

돌아가기

$replaceAll

다음

$round

이 페이지의 내용