从另一个引用一个计算列

use*_*004 3 sas calculated-columns enterprise-guide

我正在使用《 SAS企业指南7.1》,但似乎有些基本问题。我将简化问题,但从根本上讲,我有一个使用CASE / WHEN语句的计算列(Computed_column1),例如

CASE
WHEN x > y THEN "TRUE"
ELSE "FALSE"
END
Run Code Online (Sandbox Code Playgroud)

我想在第二个计算列(Computed_column2)中引用第一个计算列,但是查询生成器中的高级表达式选项卡从第一个计算列中检索所有内容,而不是引用计算列名称。因此,如果我需要更改第一列,那么我也必须更改第二列。

所以我的第二个计算列看起来像这样:

CASE
WHEN (CASE WHEN x > y THEN "TRUE" ELSE "FALSE" END) > z THEN "TRUE"
ELSE "FALSE"
END
Run Code Online (Sandbox Code Playgroud)

当我希望它成为某种动态引用时,例如:

CASE
WHEN Computed_column1 > z THEN "TRUE"
ELSE "FALSE"
END
Run Code Online (Sandbox Code Playgroud)

这样,如果第一个计算列更改了第二个列,则也会更改。这不可能吗?

提前加油。

Ale*_*ida 7

You can read more about calculated variables here (paragraph name "THE CALCULATED OPTION ON THE SELECT"). In your case you should write:

CASE
WHEN CALCULATED Computed_column1 > z THEN "TRUE"
ELSE "FALSE"
END
Run Code Online (Sandbox Code Playgroud)