将 EAV table 转换为 JSON 更新查询
Convert an EAV table to JSON update query
我有一个简单的 EAV table,我想将其转换为 JSON/B 并将其插入到我将添加到实体 table 的列中。
这旨在用作迁移查询。
我的 EAV :
记录 ( id, ... )
RecInfos (recordid, key, value)
对于记录 table 中的每个条目,它将创建一个 json 表示可以在 RecInfos table 中找到的每个键/值,这将是作为记录 table.
的更新发送
我正在使用 postgresql 10.3
这是我要搜索的内容:
update
record r
set
infos = (
select
json_agg(json_build_object('name',i.name,'value',i.value))
from
recinfos i
where
i.rec_id = r.id
)
我有一个简单的 EAV table,我想将其转换为 JSON/B 并将其插入到我将添加到实体 table 的列中。
这旨在用作迁移查询。
我的 EAV :
记录 ( id, ... ) RecInfos (recordid, key, value)
对于记录 table 中的每个条目,它将创建一个 json 表示可以在 RecInfos table 中找到的每个键/值,这将是作为记录 table.
的更新发送我正在使用 postgresql 10.3
这是我要搜索的内容:
update
record r
set
infos = (
select
json_agg(json_build_object('name',i.name,'value',i.value))
from
recinfos i
where
i.rec_id = r.id
)