- 카테고리:
반정형 및 정형 데이터 함수 (배열/오브젝트)
OBJECT_DELETE¶
하나 이상의 키가 제거된 입력(즉, 소스) 오브젝트의 내용을 포함하는 오브젝트를 반환합니다.
구문¶
OBJECT_DELETE( <object>, <key1> [, <key2>, ... ] )
인자¶
object
소스 오브젝트입니다.
key1
,key2
반환된 오브젝트에서 생략할 키입니다.
사용법 노트¶
정형 OBJECT 의 경우:
키인 인자의 경우 상수를 지정해야 합니다.
지정된 키가 OBJECT 유형 정의에 포함되지 않는 경우 호출이 실패합니다. 예를 들어, 다음 호출은 OBJECT에 지정된 키
zip_code
가 포함되어 있지 않으므로 실패합니다.SELECT OBJECT_DELETE( {'city':'San Mateo','state':'CA'}::OBJECT(city VARCHAR,state VARCHAR), 'zip_code' );
093201 (23001): Function OBJECT_DELETE: expected structured object to contain field zip_code but it did not.
이 함수는 정형 OBJECT를 반환합니다. OBJECT 유형은 삭제된 키를 제외합니다. 예를 들어,
city
키를 제거한다고 가정해 보겠습니다.SELECT OBJECT_DELETE( {'city':'San Mateo','state':'CA'}::OBJECT(city VARCHAR,state VARCHAR), 'city' ) AS new_object, SYSTEM$TYPE_OF(new_object);
이 함수는
city
키를 포함하지 않는OBJECT(state VARCHAR)
유형의 OBJECT를 반환합니다.+-----------------+--------------------------------------+ | NEW_OBJECT | SYSTEM$TYPEOF(NEW_OBJECT) | |-----------------+--------------------------------------| | { | OBJECT(state VARCHAR(16777216))[LOB] | | "state": "CA" | | | } | | +-----------------+--------------------------------------+
이 함수는 오브젝트에서 모든 키를 제거할 경우 OBJECT() 유형의 빈 정형 OBJECT를 반환합니다.
SELECT OBJECT_DELETE( {'state':'CA'}::OBJECT(state VARCHAR), 'state' ) AS new_object, SYSTEM$TYPEOF(new_object);
+------------+---------------------------+ | NEW_OBJECT | SYSTEM$TYPEOF(NEW_OBJECT) | |------------+---------------------------| | {} | OBJECT()[LOB] | +------------+---------------------------+
정형 OBJECT의 유형에 키-값 페어가 포함된 경우 해당 페어의 이름과 유형이 유형의 괄호 안에 포함됩니다(예: OBJECT(city VARCHAR)). 빈 정형 OBJECT에는 키-값 페어가 포함되어 있지 않으므로 괄호는 비어 있습니다.
예¶
SELECT OBJECT_DELETE(OBJECT_CONSTRUCT('a', 1, 'b', 2, 'c', 3), 'a', 'b'); -------------------------------------------------------------------+ OBJECT_DELETE(OBJECT_CONSTRUCT('A', 1, 'B', 2, 'C', 3), 'A', 'B') | -------------------------------------------------------------------+ { | "c": 3 | } | -------------------------------------------------------------------+