2017-08-25 12 views
0

MySQLデータベースにJSON文字列を含むlongtextフィールドがあります。私は文字列内の1行だけを更新できるようにしたいのですが、更新されたもの全体を再挿入する必要はありません。MySQLに保存されたJSONの1行を更新する

どうすればいいですか?私はLaravelを使用していますが、必要に応じて生のクエリを実行できます。

(これは私が右のterminolgoyを使用していないので、もし私が私を許して、JSONを使用しています初めてです。)

+0

いくつかの例データ、あなたが取得したい結果、実際に有用であろう。たぶん['' JSON_REPLACE'](https://dev.mysql.com/doc/refman/5.7/en/json-modification-functions.html#function_json-replace)関数は必要なものを行うことができます。 – wchiquito

答えて

0

あなたの列がjson型であることが必要です。 JSON_SETを使用して、ペイロードに特定のjsonキーを設定することができます。

例:

update table SET json_column = JSON_SET( json_column , '$.\"$key\"' , 'foo') where id = 1;

関連する問題