Q1:ドキュメント に明示的な制限はありません 。実際には、一部の操作はテーブルの数に対してO(n)です。データベース内のテーブルが数千または数万に達すると、計画時間が長くなり、自動バキュームなどの問題が発生することが予想されます。
Q2:クエリによって異なります。一般的に、巨大な組合は悪い考えです。テーブルの継承は少し良く機能しますが、constraint_exclusion
を使用している場合 計画時間が大幅に増加します。
これらの質問は両方とも、設計の根本的な問題を示唆しています。 必要ない 膨大な数のテーブルと巨大な組合。
他の回答のコメントを見ると、実際にはいくつかのテーブルを作成しているだけです。電話番号ごとに1つのテーブルを作成する必要があるようですが、これは無意味であり、その上に番号ごとにビューを作成します。これを行わないでください。データのモデルが誤っており、操作が難しくなり、簡単ではなくなります。インデックス、where句、および結合を使用すると、データがいくつかのテーブルに論理的に構造化されている場合に、データをより効果的に使用できます。基本的なリレーショナルモデリングを研究することをお勧めします。
後でスケーラビリティの問題が発生した場合は、パーティション化をご覧ください。 a> 、ただし、そのために何千ものテーブルは必要ありません。