Обсуждение: How can retrieve total query run-time with out using explain

Поиск
Список
Период
Сортировка

How can retrieve total query run-time with out using explain

От
Radhya sahal
Дата:
Dear all,
How can retrieve total query run-time  when i run any query with out using explain
for example when i run any query  such  as
select * from  tablel1;
Total query runtime: 443 ms.
 i want a function can return "runtime: 443 ms" with out using explain
i want this command to call it from java source code
can any one help me??? .

Re: How can retrieve total query run-time with out using explain

От
Craig Ringer
Дата:
On 3/07/2011 12:13 PM, Radhya sahal wrote:
> Dear all,
> How can retrieve total query run-time when i run any query with out
> using explain

EXPLAIN doesn't tell you the query runtime.

EXPLAIN ANALYZE does, but it doesn't return the query results, returning
plan and timing information instead.

> for example when i run any query such as
> select * from tablel1;
> Total query runtime: 443 ms.

in psql, use:

\timing on

> i want a function can return "runtime: 443 ms" with out using explain
> i want this command to call it from java source code

Record the system time before you run the query using
System.currentTimeMillis()  or System.nanoTime().

Record the system time after you run the query.

Subtract and convert the difference to a java.util.Date so you can
format it prettily for display, or just print the difference in
milliseconds. If you want more flexible date/time handling, see JodaTime.

This gives you the time the query took including how long it took to
retrieve the initial resultset. If you want the time the query took to
execute on the server, not counting fetch time, this may not be what you
want.

I don't know how to get query execution time *not* counting resultset
retrieval time from the client. Anyone know if it's even possible?

--
Craig Ringer