在其他的PostgreSQL的DBMS(例如,Netezza公司),我可以做这样的事情没有错误:请参阅Amazon Redshift查询中的聚合结果?
select store_id
,sum(sales) as total_sales
,count(distinct(txn_id)) as d_txns
,total_sales/d_txns as avg_basket
from my_tlog
group by 1
即,我可以在定义他们同样的SQL查询中使用聚合值。
但是,当我在Amazon Redshift上执行同样的操作时,出现错误“Column total_sales does not exist ...”,但它没有,这是正确的;这不是一个真正的专栏。但是有没有办法保留这个习惯用法,而不是重构查询?我问,因为会有很多代码需要改变。
谢谢。
这些都是合理的设计考虑因素。我想我希望像一个会引起注意的#pragma风。相反,我只是让代码更加主流。 – Chris