PostgreSQL で jsonb 型のカラムの一部を更新する方法を備忘録として残しておく
方法
以下の DB 構成および更新前のレコードの場合
- Book Table
- id field: SERIAL type ※Primary Key
- value: 1
- options field: JSONB type
- value: {“key_1”: “aaa”, “key_2”: “bbb”}
- id field: SERIAL type ※Primary Key
UPDATE book
SET
options = options || '{"key_1": "ccc"}',
WHERE id = 1;
更新後
- Book Table
- id field: SERIAL type ※Primary Key
- value: 1
- options field: JSONB type
- value: {“key_1”: “ccc”, “key_2”: “bbb”}
- id field: SERIAL type ※Primary Key