説明
この関数は、JSONオブジェクトのトップレベルの値から検索を開始し、対応するパスのKeyの配列を返します。
構文
JSON_KEYS(json_doc[, path])
説明
パラメータ json_doc はJSONドキュメントを指定するために使用され、path はパスパラメータです。いずれかのパラメータが NULL の場合、NULL を返します。
json_doc パラメータがオブジェクトではない場合、または path (指定されている場合) が任意のパスに対応しない場合、NULL を返します。
次の場合はエラーが発生します。
json_docパラメータが有効なJSONドキュメントではありません。pathパラメータが有効なパス式ではありません。pathパラメータに * または ** ワイルドカードが含まれています。
選択されたオブジェクトが空の場合、結果は空になります。トップレベルの値にサブオブジェクトがネストされている場合、返される値にはこれらのサブオブジェクトからのKeyは含まれません。
例
obclient> SELECT JSON_KEYS('{"a": 1, "b": {"c": 20}}', '$.b');
+----------------------------------------------+
| JSON_KEYS('{"a": 1, "b": {"c": 20}}', '$.b') |
+----------------------------------------------+
| ["c"] |
+----------------------------------------------+
1 row in set
obclient> SELECT JSON_KEYS('{"a": 1, "b": {"c": 20}}');
+---------------------------------------+
| JSON_KEYS('{"a": 1, "b": {"c": 20}}') |
+---------------------------------------+
| ["a", "b"] |
+---------------------------------------+
1 row in set