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

タイムゾーンフィールドのないタイムスタンプのインデックスを使用しないクエリ

    答えは、実行計画のこの部分にあります。

    Seq Scan ... (actual ... rows=2876756 ...)
      ...
      Rows Removed by Filter: 141052
    

    とにかくほとんどすべての行が返されるため、シーケンシャルスキャンを使用し、フィルターで除外されたいくつかの行を破棄することが、クエリを処理する最も効率的な方法です。

    それを確認したい場合は、一時的に

    SET enable_seqscan = off;
    

    可能であれば、PostgreSQLが順次スキャンを回避するようにします。次に、クエリの実行が速くなるかどうかをテストできます。




    1. plpgsql関数内のトランザクション

    2. JSON_TYPE()–MySQLでJSON値のタイプを取得します

    3. 値リストの挿入が列リストと一致しません:1136列数が値数と一致しません

    4. Oracleで動作するファイルアップロードをgrailsで作成するにはどうすればよいですか?