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

PostgreSQL:同じクエリで計算列を使用する

    列エイリアスにアクセスできるようにするには、SELECTステートメントを派生テーブルにラップする必要があります。

    select cost1,
           quantity_1,
           cost_2,
           quantity_2
           total_1 + total_2 as total_3
    from (
        select cost_1, 
               quantity_1, 
               cost_2, 
               quantity_2, 
               (cost_1 * quantity_1) as total_1,
               (cost_2 * quantity_2) as total_2
        from data
    ) t
    

    その上でパフォーマンスのペナルティはありません。

    (私は本当に 元のSQLステートメントがDBMSで実行されていることに驚いています)



    1. ORDERBYとGROUPBYを一緒に使用する

    2. SQLServerインデックスの破損を修復するための無料の方法

    3. フォローするトップデータベースブログ

    4. SQL Server一括挿入–パート2