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)