1. ホーム
  2. sql

[解決済み] PostgreSQL DBの現在の接続数を取得するための正しいクエリ

2022-04-20 20:22:39

質問

次の2つのうち、どちらがより正確でしょうか?

select numbackends from pg_stat_database;

select count(*) from pg_stat_activity;

解決方法は?

この2つの要求は等価ではありません。最初のものと等価なバージョンは、次のようになります。

SELECT sum(numbackends) FROM pg_stat_database;

その場合、単純にカウントする行数が少ないので、そのバージョンは2番目のバージョンより若干速くなると予想されます。しかし、その違いを測定することはできないでしょう。

どちらのクエリもまったく同じデータに基づいているので、同じように正確でしょう。