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

WHEREIN句を置き換えるための一時テーブルの使用

    競合について心配する必要はありません。

    pg_tempスキーマはセッション固有です。別のセッションに並行ステートメントがある場合は、異なるスキーマが使用されます(同じ名前であると表示されている場合でも)。

    ただし、2つの注意事項:

    1. 一時オブジェクトを作成するたびに、システムカタログは一時スキーマとオブジェクト自体を作成します。頻繁に使用すると、混乱する可能性があります。

      したがって、小さなセット/頻繁に使用する場合は、通常、inに固執することをお勧めします。 またはwith ステートメント(どちらもPostgresは非常にうまく対処します)。また、不変のセット戻り関数を使用して、プランナーをだまして、探しているプラ​​ンを使用させると便利な場合もあります。

    2. 実際に一時テーブルを使用することにした場合は、通常、いっぱいになったらインデックスを作成して分析することをお勧めします。それ以外の場合は、withを書くだけです。 ステートメント。



    1. MySQLフルテキストストップワードの問題

    2. ポーランド語の文字を保存するmysql

    3. Oracle Merge vs Select、次に挿入または更新

    4. モデルのfind()は、ある環境ではidを文字列として、他の環境ではintを提供します