Ich möchte einige SQL-Abfragen mit meiner PostgreSQL-Datenbank vergleichen. Gibt es eine Möglichkeit, SQL-Abfragen mit psql
zeitlich abzustimmen?
Schalten Sie einfach das Timing ein, indem Sie Folgendes eingeben:
\timing
Das Timing kann mit \timing
An der psql-Eingabeaufforderung aktiviert werden (wie Caleb bereits sagte).
Wenn Sie mit 8.4 oder höher arbeiten, Sie können \timing
Ein optionales Ein/Aus-Argument hinzufügen , was hilfreich sein kann, wenn Sie in der Lage sein möchten Timing einstellen) in .psqlrc - Sie können dann \timing on
explizit in einem Skript festlegen, in dem \timing
es sonst deaktivieren würde
Die Zeit, die \timing
return enthält auch die Netzwerklatenz, wenn Sie eine Verbindung zu einem Remote-Server herstellen.
Wenn Sie das nicht wollen und auch die Abfrageausgabe nicht benötigen, verwenden Sie besser EXPLAIN ANALYZE
, der den Abfrageplan mit den Planerschätzungen plus den tatsächlichen Ausführungszeiten ausgibt.
beispielsweise, EXPLAIN ANALYZE SELECT foo from bar ;