MySQL 5.7.12 データベースに JSON カラムを持つテーブルがあります。
列のデータは次の構造になっています (json 配列には複数の json オブジェクトが含まれる場合があります):
[{"ste": "I", "tpe": "PS"}, {"ste": "I", "tpe": "PB"}]
tpe=PB の ste の値を変更する UPDATE クエリを作成したいと考えています。
これは私の試みです:
ユーザーの更新 SET ext = JSON_SET(JSON_SEARCH(ext, 'one', 'PB', NULL, '$**.tpe'), '$.tpe', 'A');
クエリの出力は次のようになります:
[{"ste": "I", "tpe": "PS"}, {"ste": "A", "tpe": "PB"}]
これは機能しません。列が次のように更新されます:
"$[0].tpe"
どうすれば機能しますか?
######編集######これはより理にかなっていると思いますが、構文にはまだ問題があります リーリー
1 件の回答
これがまだ必要であることを願っています。
#JSON_SET で変数パスを使用してみてください。 JSON_SEARCH を使用して変数パスを取得し、絶対パスtpe を ste に置き換えてその値を更新します。私にとってはうまくいきます!
リーリー
Hot Questions
Hot Tools
vc9-vc14 (32+64 ビット) ランタイム ライブラリ コレクション (以下のリンク)
phpStudy のインストールに必要なランタイム ライブラリのコレクションをダウンロードします。
VC9 32ビット
VC9 32 ビット phpstudy 統合インストール環境ランタイム ライブラリ
PHP プログラマー ツールボックスのフルバージョン
プログラマ ツールボックス v1.0 PHP 統合環境
VC11 32ビット
VC11 32ビットphpstudy統合インストール環境ランタイムライブラリ
SublimeText3 中国語版
中国語版、とても使いやすい
ホットトピック
20335
7
13530
4
11850
4
8835
17
8420
7





