Odpowiedzi:
Czas można włączyć za pomocą \timing
polecenia psql (jak już powiedział Caleb).
Jeśli korzystasz z wersji 8.4 lub nowszej, możesz dodać opcjonalny argument wł. / Wył.\timing
, Który może być pomocny, jeśli chcesz mieć możliwość ustawiania czasu w .psqlrc - możesz wtedy ustawić \timing on
jawnie w skrypcie, w którym zwykłyby\timing
przełączałyby się to wyłączone
Zwracany czas \timing
obejmuje również opóźnienie sieciowe, jeśli łączysz się ze zdalnym serwerem.
Jeśli nie chcesz tego i nie potrzebujesz również danych wyjściowych zapytania, lepiej użyj tego EXPLAIN ANALYZE
, który generuje plan zapytania wraz z szacunkami planisty oraz faktycznymi czasami wykonania.
na przykład, EXPLAIN ANALYZE SELECT foo from bar ;
explain analyze
zbiorów daje czasy, które są w przybliżeniu dwa razy większe niż to, co widzę podczas używania \timing
, co jest przeciwieństwem tego, czego oczekiwałbym na podstawie komentarzy tutaj dotyczących opóźnienia sieci. Podejrzewam, że normalne wykonanie wiąże się z narzutem, analyze
który wydłuża czas zapytania. Na podstawie dokumentów uważam, że EXPLAIN (ANALYZE, TIMING OFF) SELECT foo FROM bar
dostarczy Ci bardziej przydatnych informacji o czasie. Szczegółowe informacje można znaleźć na stronie postgresql.org/docs/9.6/static/sql-explain.html .