CAN_JSON_PARSE 함수 - Amazon Redshift

CAN_JSON_PARSE 함수

CAN_JSON_PARSE 함수는 JSON 형식의 데이터를 구문 분석하고 JSON_PARSE 함수를 사용하여 결과를 SUPER 값으로 변환할 수 있는 경우 true를 반환합니다.

구문

CAN_JSON_PARSE( {json_string | binary_value} )

인수

json_string

직렬화된 JSON을 VARCHAR 형식으로 반환하는 표현식입니다.

binary_value

VARBYTE 유형의 이진 값입니다.

반환 타입

BOOLEAN

사용 노트

  • CAN_JSON_PARSE는 빈 문자열에 대해 false를 반환합니다. 입력 인수가 null이면 NULL을 반환합니다.

예시

다음 예제에서는 CASE 조건을 사용하여 올바른 형식의 JSON 배열에 대해 실행되는 CAN_JSON_PARSE를 보여줍니다. true가 반환되므로 Amazon Redshift는 예제 값에 대해 JSON_PARSE 함수를 실행합니다.

SELECT CASE WHEN CAN_JSON_PARSE('[10001,10002,"abc"]') THEN JSON_PARSE('[10001,10002,"abc"]') END; case --------------------- '[10001,10002,"abc"]'

다음 예제에서는 CASE 조건을 사용하여 JSON 형식이 아닌 값에 대해 실행되는 CAN_JSON_PARSE를 보여줍니다. false가 반환되므로 Amazon Redshift는 CASE 조건의 ELSE 절에 있는 세그먼트를 대신 반환합니다.

SELECT CASE WHEN CAN_JSON_PARSE('This is a string.') THEN JSON_PARSE('This is a string.') ELSE 'This is not JSON.' END; case --------------------- "This is not JSON."