| From: | chrisj <chrisj(dot)wood(at)sympatico(dot)ca> |
|---|---|
| To: | pgsql-performance(at)postgresql(dot)org |
| Subject: | using a stored proc that returns a result set in a complex SQL stmt |
| Date: | 2007-10-15 16:09:25 |
| Message-ID: | 13216092.post@talk.nabble.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-performance |
Hi,
I am trying to decide between using a temporary table or a stored proc that
returns a result set to solve a fairly complex problem, and was wondering if
Postres, when it sees a stored proc reference in a SQL, is smart enough to,
behind the scenes, create a temporary table with the results of the stored
proc such that the stored proc does not get executed multiple times within a
single query execution??
Example: suppose I had a stored proc called SP_bob that returns a result set
including the column store_no
and I wrote the following query:
select * from Order_Line as X
where not exists (select 1 from SP_bob(parm1, parm2) as Y where X.store_no =
Y.store_no)
Can I rest assured that the stored proc would only run once, or could it run
once for each row in Order_Line??
The only reason I am going down this road is because of the difficulty of
using temp tables ( i.e. needing to execute a SQL string). Does anyone know
if this requirement may be removed in the near future?
--
View this message in context: http://www.nabble.com/using-a-stored-proc-that-returns-a-result-set-in-a-complex-SQL-stmt-tf4628555.html#a13216092
Sent from the PostgreSQL - performance mailing list archive at Nabble.com.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Stéphane Schildknecht | 2007-10-16 08:48:24 | Vacuum goes worse |
| Previous Message | henk de wit | 2007-10-12 23:48:23 | Re: How to speed up min/max(id) in 50M rows table? |