我有一个正在计算p值的查询,但是我想重用它来获得意义。我不确定我是否可以重用这些数据,或者我是否必须复制这些数据。
这是我的问题
CASE WHEN value1 > 1
AND 1.0 - IF(
p_value1 IS NULL,
1.0,
p_value1
) >= 0.8 THEN p_value1 WHEN value1 <= 1
AND 1.0 - IF(
p_value2 [1.03] is NULL,
1.0,
p_value2 [1.03]
) >= 0.8 THEN p_value2 [1.03] END AS p_value,
...
FROM table1
WHERE dt = '2018-01-01'
它所做的是检查value1是否大于1,p\u value1是否大于0.8,然后打印p\u value2,否则如果value1小于1,则从p\u value2[1.03]获取值并将其打印为p\u值。
现在我要展示的下一个专栏是 1 - p_value
所以我可以得到它的意义。但我不想复制整个 CASE
下一栏。会是这样的。
p_value, significance (1-p_value)
0.03, 0.97
0.02, 0.98
1条答案
按热度按时间vi4fp9gy1#
您的代码更简单:
你不能使用
p_value
在同一行的任何后续表达式中SELECT
(或大多数其他条款)。您可以使用cte或子查询: