Analyzing last run query in psql

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Analyzing last run query in psql

Joe Van Dyk
I frequently need to analyze the last query in psql:
    select * from table where id = 1;
    explain analyze select * from table where id = 1;

It would be nice to be able to do this:
    explain analyze $LAST

(or can I do something like that already?)

I'm not using psql interactively, I pipe files into psql (if it matters).

Joe
Reply | Threaded
Open this post in threaded view
|

Re: Analyzing last run query in psql

Andreas Kretschmer-2
Joe Van Dyk <[hidden email]> wrote:

> I frequently need to analyze the last query in psql:
>     select * from table where id = 1;
>     explain analyze select * from table where id = 1;
>
> It would be nice to be able to do this:
>     explain analyze $LAST
>
> (or can I do something like that already?)
>
> I'm not using psql interactively, I pipe files into psql (if it matters).

There is no history or something like that, but you can use autoexplain.
http://www.postgresql.org/docs/9.2/interactive/auto-explain.html




Andreas
--
Really, I'm not out to destroy Microsoft. That will just be a completely
unintentional side effect.                              (Linus Torvalds)
"If I was god, I would recompile penguin with --enable-fly."   (unknown)
Kaufbach, Saxony, Germany, Europe.              N 51.05082°, E 13.56889°


--
Sent via pgsql-general mailing list ([hidden email])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
Reply | Threaded
Open this post in threaded view
|

Re: Analyzing last run query in psql

Luca Ferrari
In reply to this post by Joe Van Dyk
On Wed, Jul 3, 2013 at 7:05 AM, Joe Van Dyk <[hidden email]> wrote:

> I frequently need to analyze the last query in psql:
>     select * from table where id = 1;
>     explain analyze select * from table where id = 1;
>
> It would be nice to be able to do this:
>     explain analyze $LAST
>
> (or can I do something like that already?)
>
> I'm not using psql interactively, I pipe files into psql (if it matters).


I don't know of any feature like that, but maybe you can do the
following in your script/files:

\set lastquery 'your-query-here'

so that you can do something like

explain :lastquery;

But if you are able to manipulate your scripts you can just insert the
explain by hand on queries you are interested in, or use autoexplain
for all the queries.

Luca


--
Sent via pgsql-general mailing list ([hidden email])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
Reply | Threaded
Open this post in threaded view
|

Re: Analyzing last run query in psql

Oleg Bartunov
In reply to this post by Joe Van Dyk
It was my dream to have something we already have in shell -

explain analyze !$

I think it should be not very difficult.

Oleg
On Tue, 2 Jul 2013, Joe Van Dyk wrote:

> I frequently need to analyze the last query in psql:
>    select * from table where id = 1;
>    explain analyze select * from table where id = 1;
>
> It would be nice to be able to do this:
>    explain analyze $LAST
>
> (or can I do something like that already?)
>
> I'm not using psql interactively, I pipe files into psql (if it matters).
>
> Joe
>

  Regards,
  Oleg
_____________________________________________________________
Oleg Bartunov, Research Scientist, Head of AstroNet (www.astronet.ru),
Sternberg Astronomical Institute, Moscow University, Russia
Internet: [hidden email], http://www.sai.msu.su/~megera/
phone: +007(495)939-16-83, +007(495)939-23-83


--
Sent via pgsql-general mailing list ([hidden email])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
Reply | Threaded
Open this post in threaded view
|

Re: Analyzing last run query in psql

Joe Van Dyk
On Wed, Jul 3, 2013 at 6:43 AM, Oleg Bartunov <[hidden email]> wrote:
It was my dream to have something we already have in shell -

explain analyze !$

It would probably be: explain analyze !!

(at least in bash syntax)

Joe
 

I think it should be not very difficult.

Oleg

On Tue, 2 Jul 2013, Joe Van Dyk wrote:

I frequently need to analyze the last query in psql:
   select * from table where id = 1;
   explain analyze select * from table where id = 1;

It would be nice to be able to do this:
   explain analyze $LAST

(or can I do something like that already?)

I'm not using psql interactively, I pipe files into psql (if it matters).

Joe


        Regards,
                Oleg
_____________________________________________________________
Oleg Bartunov, Research Scientist, Head of AstroNet (www.astronet.ru),
Sternberg Astronomical Institute, Moscow University, Russia
Internet: [hidden email], http://www.sai.msu.su/~megera/
phone: +007(495)939-16-83, +007(495)939-23-83



--
Sent via pgsql-general mailing list ([hidden email])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply | Threaded
Open this post in threaded view
|

Re: Analyzing last run query in psql

Joe Van Dyk
In reply to this post by Andreas Kretschmer-2
I'd like the execution plan to be in the psql output, not in the postgres log.


On Tue, Jul 2, 2013 at 11:20 PM, Andreas Kretschmer <[hidden email]> wrote:
Joe Van Dyk <[hidden email]> wrote:

> I frequently need to analyze the last query in psql:
>     select * from table where id = 1;
>     explain analyze select * from table where id = 1;
>
> It would be nice to be able to do this:
>     explain analyze $LAST
>
> (or can I do something like that already?)
>
> I'm not using psql interactively, I pipe files into psql (if it matters).

There is no history or something like that, but you can use autoexplain.
http://www.postgresql.org/docs/9.2/interactive/auto-explain.html




Andreas
--
Really, I'm not out to destroy Microsoft. That will just be a completely
unintentional side effect.                              (Linus Torvalds)
"If I was god, I would recompile penguin with --enable-fly."   (unknown)
Kaufbach, Saxony, Germany, Europe.              N 51.05082°, E 13.56889°


--
Sent via pgsql-general mailing list ([hidden email])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general