:
"":
begin;
create function f() returns trigger language plpgsql as $$
begin
new.time_of_day:=old.time_of_day+'1d'::interval;
return new;
end;$$;
create table t(time_of_day timestamp);
insert into t(time_of_day)
select timeofday()::timestamp from generate_series(1,100000);
update t set time_of_day = timeofday()::timestamp;
select max(time_of_day)-min(time_of_day) from t;
?column?
00:00:47
create trigger trig before insert on t for each row execute procedure f();
update t set time_of_day = timeofday()::timestamp;
select max(time_of_day)-min(time_of_day) from t;
?column?
00:00:47.432173
rollback;
"":
create function f() returns trigger language plpgsql as $$
begin
new.time_of_day:=old.time_of_day+'1d'::interval;
return new;
end;$$;
create table t(time_of_day timestamp);
insert into t(time_of_day)
select timeofday()::timestamp from generate_series(1,100000);
update t set time_of_day = timeofday()::timestamp;
select max(time_of_day)-min(time_of_day) from t;
?column?
00:00:48.566558
create trigger trig after insert on t for each row execute procedure f();
update t set time_of_day = timeofday()::timestamp;
select max(time_of_day)-min(time_of_day) from t;
?column?
00:00:48.922441
- "" ""
user533832