JSON 関数
警告
これはまだ実験的機能です。本番環境で使用することはお勧めしません。
TiDB は、 MySQL 5.7の GA リリースに同梱された JSON関数のほとんどをサポートしています。
JSON 値を作成する関数
JSON 値を検索する関数
| 関数名 | 説明 |
|---|
| JSON_CONTAINS(target, candidate[, path]) | 指定された候補 JSON ドキュメントがターゲット JSON ドキュメント内に含まれているかどうかを 1 または 0 を返すことによって示します |
| JSON_CONTAINS_PATH(json_doc, one_or_all, path[, path] ...) | JSON ドキュメントに特定のパスにデータが含まれているかどうかを示すために、0 または 1 を返します。 |
| JSON_EXTRACT(json_doc, path[, path] ...) | pathの引数に一致するドキュメントの部分から選択された JSON ドキュメントからデータを返します |
| -> | 評価パスの後に JSON 列から値を返します。 JSON_EXTRACT(doc, path_literal)の別名 |
| ->> | パスを評価し、結果の引用符を外した後、JSON 列から値を返します。 JSON_UNQUOTE(JSON_EXTRACT(doc, path_literal))の別名 |
| JSON_KEYS(json_doc[, path]) | JSON オブジェクトの最上位の値からキーを JSON 配列として返すか、パス引数が指定されている場合は、選択したパスから最上位のキーを返します |
| JSON_SEARCH(json_doc, one_or_all, search_string) | 文字列の 1 つまたはすべての一致について JSON ドキュメントを検索します |
JSON 値を変更する関数
| 関数名 | 説明 |
|---|
| JSON_APPEND(json_doc, path, value) | JSON_ARRAY_APPENDへのエイリアス |
| JSON_ARRAY_APPEND(json_doc, path, value) | 指定されたパスの JSON 配列の末尾に値を追加します |
| JSON_ARRAY_INSERT(json_doc, path, val[, path, val] ...) | json ドキュメントに配列を挿入し、変更されたドキュメントを返します |
| JSON_INSERT(json_doc, path, val[, path, val] ...) | データを JSON ドキュメントに挿入し、結果を返します |
| JSON_MERGE(json_doc, json_doc[, json_doc] ...) | JSON_MERGE_PRESERVEの非推奨のエイリアス |
| JSON_MERGE_PATCH(json_doc, json_doc[, json_doc] ...) | JSON ドキュメントをマージする |
| JSON_MERGE_PRESERVE(json_doc, json_doc[, json_doc] ...) | 2 つ以上の JSON ドキュメントをマージし、マージ結果を返します |
| JSON_REMOVE(json_doc, path[, path] ...) | JSON ドキュメントからデータを削除し、結果を返します |
| JSON_REPLACE(json_doc, path, val[, path, val] ...) | JSON ドキュメント内の既存の値を置き換え、結果を返します |
| JSON_SET(json_doc, path, val[, path, val] ...) | JSON ドキュメントにデータを挿入または更新し、結果を返します |
| JSON_UNQUOTE(json_val) | JSON 値の引用符を外し、結果を文字列として返します |
| JSON_ARRAY_APPEND(json_doc, path, val[, path, val] ...) | JSON ドキュメント内の指定された配列の末尾に値を追加し、結果を返します |
| JSON_ARRAY_INSERT(json_doc, path, val[, path, val] ...) | JSON ドキュメントの指定された場所に値を挿入し、結果を返します |
JSON 値の属性を返す関数
ユーティリティ機能
集計関数
こちらもご覧ください