다음을 통해 공유


try_parse_json 기능

적용 대상: 예로 표시된 확인 Databricks SQL 예로 표시된 확인 Databricks Runtime 15.3 이상

VARIANT 가능한 경우 또는 jsonStr NULL 가능하지 않은 경우 값을 반환합니다.

구문

try_parse_json ( jsonStr )

인수

  • jsonStrSTRING: JSON 문서를 지정하는 식입니다.

반품

VARIANT JSON 문자열과 jsonStr 동일한 데이터를 나타내는 값입니다. JSON 문자열을 구문 분석하는 동안 오류가 발생하면 결과는 다음과 같습니다 NULL.

대신 오류를 NULL반환하려면 parse_json 함수를 사용합니다.

주의

to_json 함수는 값을 STRING valueVARIANT/&to_json 변환하므로 논리적으로는 역입니다parse_json. 그러나 정확한 역이 아니므로 to_json(try_parse_json(jsonStr)) = jsonStr 사실이 아닐 수 있습니다.

  • 공백이 완벽하게 보존되지 않음

    { “a” : 1, “b” : 2 }{“a”:1,“b”:2}와 같습니다.

  • 키 순서는 임의일 수 있습니다.

    {“a” : 1, “b”: 2}{“b”: 2, “a” : 1}와 같습니다.

  • 숫자의 후행 0

    {“a” : 0.01000}{“a” : 0.01}와 같습니다.

예제

-- Simple example
> SELECT try_parse_json('{"key": 123, "data": [4, 5, "str"]}');
  {"data":[4,5,"str"],"key":123}

-- Parsing a scalar value
> SELECT try_parse_json('123');
  123

-- invalid JSON string
> SELECT try_parse_json('{ bad }');
  NULL