Arrow function
json_path
式で特定できる JSON オブジェクト内の要素をクエリし、JSON 値を返します。アロー関数 ->
は、json_query 関数よりもコンパクトで使いやすいです。
ヒント
すべての JSON 関数と演算子は、ナビゲーションと overview page に一覧されています。
クエリを 生成列 で高速化しましょう。
Syntax
json_object_expr -> json_path
Parameters
-
json_object_expr
: JSON オブジェクトを表す式。このオブジェクトは JSON 列、または PARSE_JSON などの JSON コンストラクタ関数によって生成された JSON オブジェクトであることができます。 -
json_path
: JSON オブジェクト内の要素へのパスを表す式。このパラメータの値は文字列です。StarRocks がサポートする JSON パス構文については、Overview of JSON functions and operators を参照してください。
Return value
JSON 値を返します。
要素が存在しない場合、アロー関数は SQL 値
NULL
を返します。
Examples
Example 1: 指定された JSON オブジェクト内で '$.a.b'
式で特定できる要素をクエリします。
mysql> SELECT parse_json('{"a": {"b": 1}}') -> '$.a.b';
-> 1
Example 2: ネストされたアロー関数を使用して要素をクエリします。別のアロー関数がネストされたアロー関数は、ネストされたアロー関数によって返される結果に基づいて要素をクエリします。
この例では、ルート要素 $ は
json_path
式から省略されています。
mysql> SELECT parse_json('{"a": {"b": 1}}')->'a'->'b';
-> 1
Example 3: 指定された JSON オブジェクト内で 'a'
式で特定できる要素をクエリします。
この例では、ルート要素 $ は
json_path
式から省略されています。
mysql> SELECT parse_json('{"a": "b"}') -> 'a';
-> "b"