مشاركة عبر


try_parse_json دالة

ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime 15.3 والإحدث

VARIANT إرجاع قيمة من jsonStr إذا كان ذلك ممكنا، أو NULL إذا لم يكن ذلك ممكنا.

بناء الجملة

try_parse_json ( jsonStr )

الوسيطات

  • jsonStrSTRING: تعبير يحدد مستند JSON.

المرتجعات

VARIANT قيمة تمثل البيانات المكافئة jsonStr كسلسلة JSON. إذا كان هناك خطأ في تحليل سلسلة JSON، تكون النتيجة NULL.

لإرجاع خطأ بدلا من NULL، استخدم الدالة parse_json .

ملاحظات

تحول الدالة to_json قيمة إلى STRING value، لذلك فهي منطقيا عكس parse_jsonVARIANT . ومع ذلك، فإنه ليس معكوسا تماما ، لذلك to_json(try_parse_json(jsonStr)) = jsonStr قد لا يكون صحيحا.

  • المسافة البيضاء غير محفوظة تماما

    { “a” : 1, “b” : 2 } مكافئ ل {“a”:1,“b”:2}

  • يمكن أن يكون ترتيب المفاتيح عشوائيا

    {“a” : 1, “b”: 2} مكافئ ل {“b”: 2, “a” : 1}

  • أصفار زائدة بالأرقام

    {“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