Derby SQL计算

Derby SQL计算,sql,derby,column-alias,Sql,Derby,Column Alias,我很难在德比中计算 下一个问题是: Select column1, (column1 + 10) as newCol, (column1+newCol) as newCol2 from sometable; 在column1+newCol的情况下,这会抛出一个错误,说明newCol不存在 为什么这不正确 谢谢你的帮助 不能在定义列别名的同一级别上访问该列别名 您需要一个派生表: select column1, newcol, column1 + newcol as newcol2 from

我很难在德比中计算

下一个问题是:

Select column1, (column1 + 10) as newCol, 
(column1+newCol) as newCol2 from sometable;
在column1+newCol的情况下,这会抛出一个错误,说明newCol不存在

为什么这不正确


谢谢你的帮助 不能在定义列别名的同一级别上访问该列别名

您需要一个派生表:

select column1, newcol, column1 + newcol as newcol2
from (
  Select column1, (column1 + 10) as newCol
  from sometable
) t;

您不能在定义别名的同一选择中使用别名。非常感谢。那么我怎样才能实现我想要的呢?我不知道Derby是否支持常用的表表达式,但它是否支持:使用cteData作为select column1,column1+10作为sometable中的newcoll选择column1,newCol,column1+newCol from cteData。或者干脆咬紧牙关,从sometable中选择column1、column1+10作为newCol、column1+column1+10作为newCol2