Je voudrais comparer certaines requêtes SQL avec ma base de données PostgreSQL. Existe-t-il un moyen de chronométrer les requêtes SQL en utilisant psql
?
Activez simplement le chronométrage en entrant:
\timing
Le chronométrage peut être activé avec \timing
à l'invite psql (comme l'a déjà dit Caleb).
Si vous êtes sur 8.4 ou supérieur, vous pouvez ajouter un argument on/off optionnel à \timing
, ce qui peut être utile si vous voulez pouvoir définir le timing sur .psqlrc - vous pouvez alors définir \timing on
explicitement dans un script où plain \timing
le désactiverait autrement
Le temps que \timing
renvoie également la latence du réseau, si vous vous connectez à un serveur distant.
Lorsque vous ne le souhaitez pas et n'avez pas besoin de la sortie de la requête, mieux vaut utiliser EXPLAIN ANALYZE
, qui génère le plan de requête avec les estimations du planificateur plus les temps d'exécution réels.
par exemple, EXPLAIN ANALYZE SELECT foo from bar ;