RickZeeland
Проблема может заключаться в том, что sqlfiddle не поддерживает эту функциональность.
Схемы, похоже, не поддерживаются, но вы можете попробовать вот так:
create table tmpx (n text, v text, t text[]);
create table tmpy (n text, v text, p text);
delete from tmpx;
delete from tmpy;
insert into tmpx values ('android.apps', '3.1.4', null);
insert into tmpy values ('android.apps', '3.1.4', '08.12.2017');
insert into tmpy values ('android.apps', '3.1.4', '03.12.2017');
UPDATE tmpx set t = sub.t
FROM (select array_agg(p) as t
from tmpy,tmpx where tmpx.n = tmpy.n and tmpx.v = tmpy.v) AS sub;
select * from tmpx;
Также вам нужно выбрать PostgreSQL 9.6 вместо 9.3
Member 13453926
В качестве примера я использовал sqlfiddle. Я попробовал это также в postgresql с моими реальными данными, но безуспешно. Мне кажется, что обновление не может обновить одну и ту же строку несколько раз в целевой таблице.