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

postgresqlのクエリの実行プランを手動で変更しますか?

    サブクエリまたはCTE を使用します 最初に特定の操作を強制します。いいね:

    SELECT *
    FROM  (
       SELECT *
       FROM   tbl
       LIMIT  10
       ) x
    ORDER  BY 1;
    

    を理解する必要があります もちろん、あなたはやっています。この例では、10個の任意を選択します。 行を並べてから、最初の列で並べ替えます。
    複数のサブクエリのレイヤー、または複数のCTEを1行で使用できます。

    CTEと同じ例:

    WITH x AS (
       SELECT *
       FROM   tbl
       LIMIT  10
       )
    SELECT *
    FROM   x
    ORDER  BY 1;
    

    サブクエリは通常、単純なクエリの方が高速です。CTEは追加機能を提供します(異なるクエリレベルの複数の場所で同じCTEを再利用するなど)。



    1. 最新ニュース:新しいMicrosoft SQL Server Native Client 18がリリースされました!

    2. Oracle 9i、Oracle 10g、およびOracle 11gDeveloperSuiteのフォームとレポートのチュートリアル

    3. EXPLAINを実行しているときに、キーのフィールド値がnullではなく、Extraが空白の場合、キーが使用されますか?

    4. MySQLで日数を減算する方法