在Redshift Spectrum中选择带有连字符的字段

我正在尝试通过Redshift Spectrum提取名称中带有连字符的嵌套字段

SELECT mystruct.mysubstruct.my-field.id
FROM my_external_schema.my_table 

我在其他DBMS中看到建议将字段名用双引号引起来:

"mystruct.mysubstruct.my-field.id"

或后壁虱

`mystruct.mysubstruct.my-field.id`

但是这些都不对我有用。

有任何建议吗?

fang2fang 回答:在Redshift Spectrum中选择带有连字符的字段

由于双引号允许转义特殊字符,所以执行“ mystruct.mysubstruct.my-field.id”意味着您正在顶层搜索名为“ mystruct.mysubstruct.my-field.id”的列,不用作嵌套列,因为点不用于提取字段。

您要做的是

SELECT mystruct.mysubstruct."my-field".id
FROM my_external_schema.my_table 
本文链接:https://www.f2er.com/2356580.html

大家都在问