Ron Johnson <ronljohnso...@gmail.com> writes:
> EXPLAIN SELECT works inside a FOR loop, but only the first line of the
> EXPLAIN output is stored.  What's the magic sauce for seeing the whole
> EXPLAIN output?

The usual way is to run a FOR loop over the lines of output.
Quick & dirty example:

regression=# do $$
declare ln text;
begin
  for ln in explain select * from int8_tbl join int4_tbl on q1=f1 loop
    raise notice '%', ln;
  end loop;
end $$;
NOTICE:  Hash Join  (cost=1.11..2.23 rows=5 width=20)
NOTICE:    Hash Cond: (int8_tbl.q1 = int4_tbl.f1)
NOTICE:    ->  Seq Scan on int8_tbl  (cost=0.00..1.05 rows=5 width=16)
NOTICE:    ->  Hash  (cost=1.05..1.05 rows=5 width=4)
NOTICE:          ->  Seq Scan on int4_tbl  (cost=0.00..1.05 rows=5 width=4)
DO

                        regards, tom lane


Reply via email to