0

我在 Derby 中进行计算时遇到了麻烦。

问题是下一个:

Select column1, (column1 + 10) as newCol, 
(column1+newCol) as newCol2 from sometable;

在这种情况下(column1+newCol),这会引发一个错误,指出 newCol 不存在。

为什么不正确?

谢谢你的帮助!

4

1 回答 1

1

您无法在定义它的同一级别访问列别名。

您需要一个派生表:

select column1, newcol, column1 + newcol as newcol2
from (
  Select column1, (column1 + 10) as newCol
  from sometable
) t;
于 2019-04-27T07:06:06.913 回答