我在 Athena 上的嵌套 select 语句出现问题(列无法解析)

Issue with my nested select statement on Athena (Column cannot be resolved)

我正在编写一个相当简单的嵌套 select 查询来更改其中一个列中的值,但由于某种原因,我不断收到与列解析相关的错误:"Column 'test1' cannot be resolved"

根据这个问题的调查结果: 我尝试删除该列并重新添加它,但没有成功。

此外,当我执行下面的命令时它起作用了。

select
test1, test2, test3
from datanewdb;

这是无效的代码:

select 
test1, test2, test3
from (
  select
  'FILLER',
  test2,
  test3
  from datanewdb)
datanewdb 
where test1 = '123';

table上那些列的实际值:

我希望我的代码 return:

对于 SQL 中的 sub-query,只有 SELECT 子句中定义的列会暴露在 sub-query 之外。如果您希望能够引用与新文字值 'FILLER' 关联的列,您需要将其命名为:

select test1, test2, test3
from (
    select
        'FILLER' AS test1,
        test2,
        test3
    from datanewdb
) datanewdb 
where test1 = '123';