sql >> データベース >  >> RDS >> PostgreSQL

PostgreSQL(9.1)が単純な等式選択にインデックスを使用しないのはなぜですか?

    これらのトラブルシューティングを行うには、トラブルシューティングの手順の合間にテーブルでVACUUM ANALYZEを実行して、何が機能するかを確認する必要があります。そうしないと、何がどこで変わったのか正確にわからない場合があります。それで、それを試して、最初に再実行して、問題が解決するかどうかを確認してください。

    実行する次のステップ(真空分析を実行し、それぞれの間でケースをテストする)は次のとおりです。

    ALTER TABLE lead ALTER COLUMN email SET STATISTICS 1000;
    

    多分それはそれを修正します。多分そうではありません。

    それでも問題が解決しない場合は、pg_statビューをよく見てください。

    SELECT * FROM pg_stat WHERE table_name = 'lead';
    

    以下をよく読んで、pg_statで間違っていることがわかるものを確認してください;

    http://www.postgresql.org/docs/9.0/static /planner-stats.html

    編集:非常に明確にするために、vacuum analyse トラブルシューティング全体ではありません。ただし、トラブルシューティングの手順の合間に実行する必要があります。そうしないと、プランナーが正しいデータを考慮していることを確認できません。



    1. GMT時刻をESTに変換する

    2. MySQLで破損したInnoDBテーブルを修復するための最良の方法

    3. SQLServerの「COALESCEへの引数の少なくとも1つはNULL定数ではない式である必要があります」を修正しました

    4. Mysqlの挿入、更新が非常に遅い