Postgresql 访问选定对象中的别名

Postgresql 访问选定对象中的别名,postgresql,sql-view,Postgresql,Sql View,我试图用一些派生数据创建一个视图,但我很难做到这一点 create or replace view myview as SELECT SUM(field1) AS "field1", COUNT(field1) AS "field2", (field1/field2) AS "field3" FROM mytable 我的问题是我对mysql更为熟悉,可能会明白这一点,但这是postgres,我仍然会被语法绊倒 我希望字段3基于字段1和字段2。我猜我可以做一些像 (S

我试图用一些派生数据创建一个视图,但我很难做到这一点

create or replace view myview as
SELECT 
    SUM(field1) AS "field1",
    COUNT(field1) AS "field2",
    (field1/field2) AS "field3"
FROM mytable
我的问题是我对mysql更为熟悉,可能会明白这一点,但这是postgres,我仍然会被语法绊倒

我希望字段3基于字段1和字段2。我猜我可以做一些像

(SUM(field1)/COUNT(field1)) AS "field3"

但这感觉有些多余,我的实际查询必须更长,因此如果有办法的话,访问别名将是个好主意。

别名在同一级别上无法识别。要么按照建议重复代码。或者您需要创建一个子查询

SELECT (field1/field2) AS "field3"
FROM (
    SELECT 
        SUM(field1) AS "field1",
        COUNT(field1) AS "field2",        
    FROM mytable
    ) T