Re: [pgsql-it-generale] Volatilità funzioni

From: Gianni Ciolli <gianni(dot)ciolli(at)2ndquadrant(dot)it>
To: pgsql-it-generale <pgsql-it-generale(at)postgresql(dot)org>
Subject: Re: [pgsql-it-generale] Volatilità funzioni
Date: 2009-06-13 20:41:12
Message-ID: 20090613204112.GC3498@fune
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-it-generale

On Sat, Jun 13, 2009 at 10:33:45PM +0200, Gianni Ciolli wrote:

> Sia t una tabella con un milione di righe, sia f una funzione volatile
> e sia g una funzione non volatile. Scrivendo la query

Errore di stampa: se avete letto le query con attenzione avete capito
che

* f è non volatile
* g è volatile

infatti:

> SELECT g(1),x FROM t;
>
> il planner è costretto a calcolare g(1) un milione di volte, mentre in
>
> SELECT f(1),x FROM t;
>
> il planner sa che, se lo ritiene opportuno, può calcolare f(1) una
> volta sola

Ciao
Dr. Gianni Ciolli - 2ndQuadrant Italia
PostgreSQL Training, Services and Support
gianni(dot)ciolli(at)2ndquadrant(dot)it | www.2ndquadrant.it

In response to

Browse pgsql-it-generale by date

  From Date Subject
Next Message Gianni Ciolli 2009-06-15 07:06:19 == Notiziario settimanale PostgreSQL - 14 giugno 2009 ==
Previous Message Gianni Ciolli 2009-06-13 20:33:45 Re: Volatilità funzioni