MySQLでJSON_REPLACE関数の使い方

環境
Windows 11 Pro 21H2 64bit
MySQL 8.0.30

構文
JSON_REPLACE(json_doc, path, val[, path, val] …)
JSON ドキュメント内の既存の値を置換し、結果を返します。 引数のいずれかが NULL である場合は、NULL を返します。

json_doc 引数が有効な JSON ドキュメントでないか、path 引数が有効なパス式でないか、* または ** ワイルドカードが含まれている場合、
エラーが発生します。
「JSON_REPLACE」を使用してkeyを指定して値を置換します。

SQL構文

SELECT JSON_REPLACE('{"cfta": 22, "cftb": 33}', '$.cfta', 66) resultA,JSON_REPLACE('{"cftc": 22, "cftd": 33}', '$.cftd', 88) resultB;

実行結果

mysql> SELECT JSON_REPLACE('{"cfta": 22, "cftb": 33}', '$.cfta', 66) resultA,JSON_REPLACE('{"cftc": 22, "cftd": 33}', '$.cftd', 88) resultB;
+--------------------------+--------------------------+
| resultA                  | resultB                  |
+--------------------------+--------------------------+
| {"cfta": 66, "cftb": 33} | {"cftc": 22, "cftd": 88} |
+--------------------------+--------------------------+
1 row in set (0.00 sec)

 

MySQL

Posted by arkgame