MySQLだと以下の様にnum1と別名を付けたものを、同じSELECT句内で使用することが可能なのですが、PostgreSQLだと不可能でした。
SELECT 1 as num1, (select(num1 + 1)) as num2
これは、MySQLの制約のゆるさ故のようですが、これをPostgreSQLやろうとした場合、以下のようにすることで可能なようです。
WITH tbl AS (SELECT 1 as num1)
SELECT num1, num1 + 1 AS num2 from tbl