[英]How to use CONVERT function in Athena. Error: Column 'bigint' cannot be resolved
In AWS athena when I use the convert function I keep getting the following error在 AWS 雅典娜中,当我使用转换 function 时,我不断收到以下错误
select convert(bigint,(split_part(address,'.',1)))
+ convert(bigint,(split_part(address,'.',2))) as sum
from table
Error code: SYNTAX_ERROR: line 2:9: Column 'bigint' cannot be resolved错误代码:SYNTAX_ERROR:第 2:9 行:无法解析列“bigint”
for example value of address is 11.22 and so I would like to return 11 and 22 as bigint and 33 as sum.例如,地址的值为 11.22,所以我想将 11 和 22 作为 bigint 返回,将 33 作为总和返回。 Does anyone have a fix for this?有没有人可以解决这个问题? I am stuck我被困住了
Use CAST使用CAST
SELECT
CAST(split_part('11.22','.',1) AS INTEGER)
+ CAST(split_part('11.22','.',2) AS INTEGER) AS sum
A cleaner and scalable solution can use regexp_extract_all and reduce更清洁且可扩展的解决方案可以使用regexp_extract_all并减少
SELECT reduce(regexp_extract_all('11.22', '\d+'),
0,
(s, x) -> CAST(s AS INTEGER) + CAST(x AS INTEGER),
s -> s)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.