MVEXPAND 명령어
MVEXPAND 명령어
mvexpand 명령어는 다중값(배열) 필드의 각 값을 별도의 행으로 확장해요.
출처: 문서
본문
mvexpand 명령어는 다중값(배열) 필드의 각 값을 별도의 행으로 확장해요. 각 문서에 대해 지정된 배열 필드의 모든 요소가 각각의 행으로 반환돼요.
구문 (Syntax)
mvexpand 명령어의 구문은 다음과 같아요:
mvexpand <field> [limit=<int>]
매개변수 (Parameters)
mvexpand 명령어는 다음 매개변수를 지원해요.
| 매개변수 | 필수/선택 | 설명 |
|---|---|---|
<field> |
필수 | 확장할 다중값(배열) 필드예요. |
limit |
선택 | 문서당 확장할 최대 값 수예요. 지정하지 않으면 모든 배열 요소가 확장돼요. |
예제 1: 기본 확장 사용하기
다음 쿼리는 배열을 만들고 별도의 행으로 확장해요:
source=people
| eval tags = array('error', 'warning', 'info')
| fields tags
| head 1
| mvexpand tags
| fields tags
쿼리는 다음과 같은 결과를 반환해요:
| tags |
|---|
| error |
| warning |
| info |
예제 2: 확장 행 수 제한하기
다음 쿼리는 확장 행 수를 제한하면서 배열을 확장해요:
source=people
| eval ids = array(1, 2, 3, 4, 5)
| fields ids
| head 1
| mvexpand ids limit=3
| fields ids
쿼리는 다음과 같은 결과를 반환해요:
| ids |
|---|
| 1 |
| 2 |
| 3 |
예제 3: 중첩 필드 확장하기
다음 쿼리는 다중값 projects 필드를 프로젝트당 하나의 행으로 확장해요:
source=people
| head 1
| fields projects
| mvexpand projects
| fields projects.name
쿼리는 다음과 같은 결과를 반환해요:
| projects.name |
|---|
| AWS Redshift Spectrum querying |
| AWS Redshift security |
| AWS Aurora security |
예제 4: 단일값 배열
단일 요소 배열은 하나의 행으로 확장돼요:
source=people
| eval tags = array('error')
| fields tags
| head 1
| mvexpand tags
| fields tags
쿼리는 다음과 같은 결과를 반환해요:
| tags |
|---|
| error |
예제 5: 없는 필드
다음 쿼리는 입력 스키마에 존재하지 않는 필드를 확장하려고 시도해요:
source=people
| eval some_field = 'x'
| fields some_field
| head 1
| mvexpand tags
| fields tags
쿼리는 다음과 같은 시맨틱 검사 예외(semantic check exception)를 발생시켜요:
{'reason': 'Invalid Query', 'details': "Field 'tags' not found in the schema", 'type': 'SemanticCheckException'}
관련 명령어 (Related commands)
nomv– 다중값 필드를 단일값 문자열로 변환해요.mvcombine– 여러 행을 다중값 필드가 있는 단일 행으로 결합해요.