我有3个表格,如下所示:
1) map(creativeid (integer), campaignid integer))
2) campaigns(id (integer), last_edited (date))
3) creatives(id(integer), last_edited (date))
地图表格中包含creativeid和campaignid,两者都是分别从广告素材和广告系列表引用的外键。
注意:一个广告系列项目可以包含多个广告素材
所以目前我在广告系列表的 last_edited 列中有完整的数据。 因此,我想将广告系列last_edited列中的数据填充到广告素材last_edited列
有没有办法实现这个目标?
答案 0 :(得分:0)
update creatives
set last_edited = s.last_edited
from (
select distinct on (m.creativeid, m.campaignid)
m.creativeid, m.campaignid, ca.last_edited
from
campaigns ca
inner join
map m on m.campaignid = ca.id
inner join
creatives cr on m.creativeid = cr.id
order by 1, 2, 3 desc
) s
where id = s.creativeid