用於一個標準的JSON字串中,按照輸入的一組鍵(key1,key2,...)抽取各個鍵指定的字串。
命令格式
string json_tuple(string <json>, string <key1>, string <key2>,...)參數說明
json:必填。STRING類型,標準的JSON格式字串。
key:必填。STRING類型,用於描述在JSON中的
path,一次可輸入多個,不能以貨幣符號($)開頭。MaxCompute支援用.或['']這兩種字元解析JSON,當JSON的Key本身包含.時,可以用['']來替代。
傳回值說明
返回STRING類型。
說明
如果JSON為空白、非法或鍵Key為空白、不合法,返回NULL。
如果JSON合法,鍵Key也存在,則返回對應字串。
支援解析包含中文、多層嵌套和多重嵌套數組的JSON資料。
解析行為和設定了
set odps.sql.udf.getjsonobj.new=true;後的GET_JSON_OBJECT的行為保持一致。在需要對同一個JSON字串多次解析的情況下,相比於多次調用GET_JSON_OBJECT,JSON_TUPLE可以一次輸入多個Key,且JSON字串只被解析一次,效率更高。JSON_TUPLE是UDTF,在需要選取其他列時應配合Lateral View使用。
相關函數
JSON_TUPLE函數屬於複雜類型函數或字串函數。