sql >> データベース >  >> RDS >> PostgreSQL

Railsのpostgresjsonフィールドでネストされたキーを更新します

    jsonキーを置き換える機能はないため、古いオブジェクトを削除して新しいオブジェクトを追加する必要があります。

    update moves 
    set data = jsonb_set(
        data::jsonb,
        array['boxes'],
        (data->'boxes')::jsonb - 'book' || jsonb_build_object('book_new', data->'boxes'->'book')
        )
    where data ->> 'boxes' like '%book%'
    returning *;
    
                             data                         
    ------------------------------------------------------
     {"boxes": {"moving": 2, "book_new": 2}, "goods": {}}
    (1 row)
    



    1. MySQLに挿入、削除されたテーブル(マジックテーブル)

    2. CSVからMySQLv5に新しいテーブルをインポートする最も簡単な方法は何ですか?

    3. ローカルホストからオンラインMySQLデータベースに接続します

    4. MySQLダンプでこれらのコメントを取り除くにはどうすればよいですか?