同じSELECTリスト内の列エイリアスを参照する
古いMS-AccessベースのシステムをPostgreSQLに変換しています。Accessでは、SELECTで作成されたフィールドは、次のように、後のフィールドの方程式の一部として使用できます。 SELECT samples.id, samples.wet_weight / samples.dry_weight - 1 AS percent_water, 100 * percent_water AS percent_water_100 FROM samples; PostgreSQLでこれを行うと、Postgresはエラーをスローします。 エラー:列「percent_water」は存在しません。 サブ選択から選択することで、これを回避する方法は次のとおりです。 SELECT s1.id, s1.percent_water, 100 * s1.percent_water AS percent_water_100 FROM ( SELECT samples.id, samples.wet_weight / samples.dry_weight - 1 AS percent_water FROM samples ) s1; 複雑なネストを回避するための最初のコードブロックのようなショートカットはありますか?私は単に言うこともできます100 * (samples.wet_weight / samples.dry_weight - 1) …