카테고리:

반정형 데이터 함수 (추출)

GET_PATH , :

경로 이름을 사용하여 반정형 데이터에서 값을 추출합니다.

GET_PATH는 GET 의 변형입니다. 첫 번째 인자로서 VARIANT, OBJECT 또는 ARRAY 열 이름을 사용하고, 두 번째 인자로서 제공된 경로 이름에 따라 필드 또는 요소의 VARIANT 값을 추출합니다.

구문

GET_PATH( <column_identifier> , '<path_name>' )

<column_identifier>:<path_name>

:( <column_identifier> , '<path_name>' )
Copy

사용법 노트

  • GET_PATH는 GET 함수 체인과 동등합니다. 경로 이름이 어떤 요소에도 해당하지 않는 경우, NULL을 반환합니다.

  • 경로 이름 구문은 표준 JavaScript 표기법입니다. 마침표(예: .)와 인덱스 연산자(예: [<인덱스>])가 앞에 오는 필드 이름(식별자)의 연결로 구성됩니다.

    • 첫 번째 필드 이름에는 선행 마침표를 지정할 필요가 없습니다.

    • 인덱스 연산자의 인덱스 값은 음수가 아닌 10진수(배열의 경우)이거나, 작은따옴표 또는 큰따옴표로 묶인 문자열 리터럴(오브젝트 필드의 경우)일 수 있습니다.

    자세한 내용은 반정형 데이터 쿼리하기 섹션을 참조하십시오.

  • 또한, GET_PATH는 경로 지정자에서 열 이름(마침표를 포함할 수 있음)을 분리하는 추출 연산자로서 : 문자를 사용하는 구문 바로 가기를 지원합니다.

    구문 일관성을 유지하기 위해 경로 표기법은 SQL 스타일의 큰따옴표로 묶인 식별자도 지원하며 경로 구분자로서의 : 사용도 지원합니다.

    : 연산자를 사용하는 경우, 모든 정수 또는 문자열 하위 식을 [] 내에 포함할 수 있습니다.

vartab 테이블에서 필드 name 을 추출합니다.

SELECT GET_PATH(v, 'attr[0].name') FROM vartab;
Copy

이것은 첫 번째 예와 동일하지만, : 를 추출 연산자로 사용합니다.

SELECT v:attr[0].name FROM vartab;
Copy

추출 연산자 : 는 왼쪽 결합형입니다. 위의 예에서 v:attr[0]:name 을 사용하는 것은 왼쪽 : 와 같은 효과가 있으며, 오른쪽 추출 연산자 :name 필드 값을 추출하는 베리언트 값(오브젝트 포함)을 생성합니다.

이는 첫 번째 예와 동일하지만, SQL 스타일의 큰따옴표로 묶인 식별자와 : 를 경로 구분 기호로 사용합니다.

SELECT GET_PATH('v:"attr"[0]:"name"') FROM vartab;
Copy