- 카테고리:
반정형 및 정형 데이터 함수 (배열/오브젝트)
OBJECT_PICK¶
기존 오브젝트의 일부 키-값 페어가 포함된 새 OBJECT 를 반환합니다.
새 오브젝트에 포함할 키-값 페어를 식별하려면 키를 인자로 전달하거나, 키가 포함된 배열을 전달합니다.
지정된 키가 입력 오브젝트에 없으면 키가 무시됩니다.
구문¶
OBJECT_PICK( <object>, <key1> [, <key2>, ... ] )
OBJECT_PICK( <object>, <array> )
인자¶
object
입력 오브젝트입니다.
key1
,key2
반환된 오브젝트에 포함되어야 하는 키-값 페어를 식별하는 하나 이상의 키입니다.
array
반환된 오브젝트에 포함되어야 하는 키-값 페어를 식별하는 키 배열입니다.
반환¶
지정된 키-값 페어를 포함하는 새 OBJECT를 반환합니다.
사용법 노트¶
정형 OBJECT 의 경우:
키인 인자의 경우 상수를 지정해야 합니다.
키로 구성된 ARRAY를 두 번째 인자로 전달할 수 없습니다. 각 키를 별도의 인자로 지정해야 합니다.
이 함수는 정형 OBJECT를 반환합니다. OBJECT 유형에는 지정된 순서대로 키가 포함됩니다.
예를 들어,
state
및city
키를 순서대로 선택한다고 가정해 보겠습니다.SELECT OBJECT_PICK( {'city':'San Mateo','state':'CA','zip_code':94402}::OBJECT(city VARCHAR,state VARCHAR,zip_code DOUBLE), 'state', 'city') AS new_object, SYSTEM$TYPEOF(new_object);
이 함수는
OBJECT(state VARCHAR, city VARCHAR)
유형의 OBJECT를 반환합니다.+-----------------------+--------------------------------------------------------------+ | NEW_OBJECT | SYSTEM$TYPEOF(NEW_OBJECT) | |-----------------------+--------------------------------------------------------------| | { | OBJECT(state VARCHAR(16777216), city VARCHAR(16777216))[LOB] | | "state": "CA", | | | "city": "San Mateo" | | | } | | +-----------------------+--------------------------------------------------------------+
예¶
다음 예는 OBJECT_PICK을 호출하여 기존 오브젝트의 키-값 페어 3개 중 2개를 포함하는 새 오브젝트를 만듭니다.
SELECT OBJECT_PICK( OBJECT_CONSTRUCT( 'a', 1, 'b', 2, 'c', 3 ), 'a', 'b' ) AS new_object; +------------+ | NEW_OBJECT | |------------| | { | | "a": 1, | | "b": 2 | | } | +------------+
위의 예에서 키는 인자로서 OBJECT_PICK에 전달됩니다. 아래와 같이 배열을 사용하여 키를 지정할 수도 있습니다.
SELECT OBJECT_PICK( OBJECT_CONSTRUCT( 'a', 1, 'b', 2, 'c', 3 ), ARRAY_CONSTRUCT('a', 'b') ) AS new_object; +------------+ | NEW_OBJECT | |------------| | { | | "a": 1, | | "b": 2 | | } | +------------+