PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Fungsi dijalankan lebih cepat tanpa pengubah STRICT?

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;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Switchover/Switchback di Slony-I saat memutakhirkan PostgreSQL versi utama 8.4.x/9.3.x

  2. Cara Mendapatkan Waktu Saat Ini di PostgreSQL

  3. psycopg2.OperationalError:FATAL:protokol frontend tidak didukung 1234.5679:server mendukung 2.0 hingga 3.0

  4. Melacak Ketersediaan Tinggi untuk PostgreSQL Dengan Detak Jantung

  5. PHP dan Postgres:menangkap kesalahan?