Mungkin overhead dari panggilan fungsi berulang yang disederhanakan dengan menyejajarkan fungsi?
Itulah yang saya duga. Anda punya ekspresi yang sangat sederhana di sana. Panggilan fungsi yang sebenarnya mungkin melibatkan pengaturan tumpukan, melewati parameter, dll.
Pengujian di bawah ini memberikan waktu proses 5 md untuk sebaris dan 50 md untuk ketat.
BEGIN;
CREATE SCHEMA f;
SET search_path = f;
CREATE FUNCTION f1(int) RETURNS int AS $$SELECT 1$$ LANGUAGE SQL;
CREATE FUNCTION f2(int) RETURNS int AS $$SELECT 1$$ LANGUAGE SQL STRICT;
\timing on
SELECT sum(f1(i)) FROM generate_series(1,10000) i;
SELECT sum(f2(i)) FROM generate_series(1,10000) i;
\timing off
ROLLBACK;