기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
$zip
Amazon DocumentDB의 $zip 연산자를 사용하면 여러 배열을 단일 튜플 배열(키-값 페어)로 결합할 수 있습니다. 이는 문서 내에서 다양한 소스 또는 배열의 데이터를 결합하여 새 문서 또는 객체를 생성해야 할 때 유용합니다.
파라미터
-
inputs: 배열로 확인되는 표현식의 배열입니다. 이러한 배열은 단일 튜플 배열로 결합됩니다. -
useLongestLength: (선택 사항)true인 경우 출력 배열은 가장 긴 입력 배열의 길이를 가지며 더 짧은 배열을null값으로 패딩합니다.false인 경우 출력 배열은 가장 짧은 입력 배열의 길이를 갖습니다. -
defaults: (선택 사항) 해당 입력 배열이 가장 긴 입력 배열보다 짧고 인 경우 튜플에 사용할 기본값 배열useLongestLength입니다true.
예제(MongoDB 쉘)
다음 예제에서는 $zip 연산자를 사용하여 두 배열을 단일 튜플 배열로 결합하는 방법을 보여줍니다.
샘플 문서 생성
db.grades.insert([ { "_id": 1, "name": "John", "scores": [90, 85, 92], "classes": ["Math", "English", "Science"] }, { "_id": 2, "name": "Jane", "scores": [88, 91, 90, 85], "classes": ["Math", "English", "Science", "History"] } ])
쿼리 예제
db.grades.aggregate([ { $project: { "name": 1, "scoredClasses": { $zip: { inputs: ["$scores", "$classes"], useLongestLength: true, defaults: [null, null] } } } } ])
출력
[
{
"_id": 1,
"name": "John",
"scoredClasses": [
[90, "Math"],
[85, "English"],
[92, "Science"],
[null, null]
]
},
{
"_id": 2,
"name": "Jane",
"scoredClasses": [
[88, "Math"],
[91, "English"],
[90, "Science"],
[85, "History"]
]
}
]
코드 예제
$zip 명령을 사용하기 위한 코드 예제를 보려면 사용하려는 언어의 탭을 선택합니다.