すべてのプロダクト
Search
ドキュメントセンター

MaxCompute:JSON_TUPLE

最終更新日:Jun 07, 2025

(key1,key2,...) などの入力キーのセットに基づいて、標準 JSON 文字列から文字列を抽出します。

構文

string json_tuple(string <json>, string <key1>, string <key2>,...)

パラメーター

  • json: 必須。STRING 型の値。このパラメーターは、標準 JSON 文字列を指定します。

  • key: 必須。STRING 型の値。このパラメーターは、JSON 文字列内の JSON オブジェクトの path を記述するために使用されます。値はドル記号($)で始めることはできません。一度に複数のキーを入力できます。MaxCompute は、. または [''] を使用して JSON オブジェクトを解析します。JSON オブジェクト内のキーにピリオド (.) が含まれている場合は、[''] を使用できます。

戻り値

STRING 型の値が返されます。

説明
  • JSON データが空または無効である場合、あるいはキーが空または無効である場合、null が返されます。

  • JSON データが有効で、キーが存在する場合、関連する文字列が返されます。

  • この関数は、中国語の文字、複数レベルのネスト、または複雑なネストの配列を含む JSON データを解析できます。

  • 解析操作は、set odps.sql.udf.getjsonobj.new=true; とともに GET_JSON_OBJECT を実行することと同じです。JSON 文字列から複数のオブジェクトを取得するには、GET_JSON_OBJECT 関数を複数回呼び出す必要があります。その結果、JSON 文字列は複数回解析されます。JSON_TUPLE 関数を使用すると、一度に複数のキーを入力でき、JSON 文字列は一度だけ解析されます。JSON_TUPLE は GET_JSON_OBJECT よりも効率的です。

  • JSON_TUPLE はユーザー定義のテーブル値関数(UDTF)です。テーブルからいくつかの列を選択する場合は、LATERAL VIEW 句とともに JSON_TUPLE を使用します。

関連関数

JSON_TUPLE は複合型関数または文字列関数です。

  • ARRAY、MAP、STRUCT、JSON などの複合データ型のデータを処理するために使用される関数の詳細については、「複合型関数」をご参照ください。

  • 文字列の検索と変換に関連する関数の詳細については、「文字列関数」をご参照ください。