我有类似的东西:
Select1 ...
,(fieldA - fieldB) AS Y,
,(Select2
(Select3 percent
From ...
Join....
Where ...
Order by some_date
Limit 1) AS X
From ...
Join...
Where ...
Order by some_date2
Limit 1) AS X
,(X * Y) AS output
From ...
Join ...
Join ...
- 是的,我将 Select 嵌套在 Select 内 Select 内 - 每个都使用上一层的值(如果没有外层,它们将无法工作!)
- 使用选择是因为我需要在每个选择中的“最接近给定但不是较新的日期”之后进行过滤
- 如您所见,我重复使用该嵌套 Select 中返回的结果两次
- 现在我将嵌套的 Select 复制到我在上面的伪代码中写 X 的地方
一切都很好,直到我需要重用该嵌套选择返回的值。
如何在“输出”列的定义中重用 X 别名?
PS 不会过去的代码,因为它现在比 A4 还多!它按预期工作,但眼睛很难看。