【发布时间】:2020-10-02 01:17:41
【问题描述】:
我的数据如下所示:
id name blocks
1 Test 1 [{"name": "Bob", "type": "INFO", "title": "CFO"}, {"type": "FOOTER"}]
2 Another [{"name": "Bob", "type": "INFO", "title": "Manager"}, {"type": "FOOTER"}]
3 Final [{"id": 22, "type": "IMAGE"}]
用户可能想在所有行中更改他们的名称,所以我需要一个 Postgres JSON 版本:
UPDATE blocks SET name = 'New Name' WHERE type = 'INFO';
如何编写一个查询来搜索这些对象数组以查找特定的 type 键值 "INFO"?这里最大的问题是这些对象可以在数组中以任何顺序排列。所以INFO 块不一定总是在索引 0 处。
【问题讨论】:
-
您要更新哪个
name。数组元素中的名称归档或名称标记 -
@AkhileshMishra 我想用新名称更新名称,只要对象具有值
type = 'INFO'
标签: sql json postgresql