JSON 配列内の特定のキーと値のペアを更新するための MySQL 構文
P粉386318086
P粉386318086 2023-11-06 14:50:43
0
1
829

MySQL 5.7.12 データベースに JSON カラムを持つテーブルがあります。

列のデータは次の構造になっています (json 配列には複数の json オブジェクトが含まれる場合があります):

[{"ste": "I", "tpe": "PS"}, {"ste": "I", "tpe": "PB"}]

tpe=PBste の値を変更する UPDATE クエリを作成したいと考えています。

これは私の試みです:

ユーザーの更新 SET ext = JSON_SET(JSON_SEARCH(ext, 'one', 'PB', NULL, '$**.tpe'), '$.tpe', 'A');

クエリの出力は次のようになります:

[{"ste": "I", "tpe": "PS"}, {"ste": "A", "tpe": "PB"}]

これは機能しません。列が次のように更新されます:

"$[0].tpe"

どうすれば機能しますか?

######編集######

これはより理にかなっていると思いますが、構文にはまだ問題があります リーリー

P粉386318086
P粉386318086

全員に返信(1)
P粉973899567

これがまだ必要であることを願っています。

#JSON_SET で変数パスを使用してみてください。 JSON_SEARCH を使用して変数パスを取得し、絶対パスtpeste に置き換えてその値を更新します。私にとってはうまくいきます! リーリー

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート