postgres第二个定义的列返回false

时间:2018-06-14 09:09:16

标签: sql postgresql column-alias

我正在尝试在 SELECT 语句中定义多个列,
问题是当我尝试使用column "col_name" does not exist定义第二个列名进行计算时,我不断收到as错误。 这是我的疑问:

SELECT fa.farmer_id as farmer,
  ST_area(fi.geom)/10000 * cr.yieldperhectar as totalyield,
  totalyield * 1000 * cr.priceperkg as revenue,
  revenue - cr.waterdemandpermonth*1980 as income,
  extract(year from wu.usedate) as yyyy
FROM farmers as fa JOIN
  fields as fi ON fa.farmer_id = fi.farmer JOIN
  fieldcrops as fc ON fi.id = fc.field_id JOIN
  crops as cr ON fc.crop_id = cr.crop_id JOIN 
  wateruse as wu ON fi.id = wu.field_id,
  valves as va

我收到的警告是enter image description here enter image description here
你可以忽略第6行的部分,我的查询中有注释掉的行。

我在这里做错了吗?

修改

在这里找到答案:PostgreSQL Views: Referencing one calculated field in another calculated field,感谢所有重复的标志(之前找不到) 必须重新计算该字段。

0 个答案:

没有答案