如何获取 AWS Athena 中
VARCHAR
或 STRING
列的长度? AWS 文档没有提供有关长度函数的任何信息,该函数的作用相当于 Redshift 中的 LEN()
函数。
Presto 的
length()
函数可用于获取 STRING
/VARCHAR
列的大小。
用途:
length(column_name)
length()
函数返回以字符为单位的大小。对于具有多字节字符的 unicode 字符串,情况可能有所不同。我在将增量表中的此类数据插入使用固定长度 varchar 列的不同数据库时遇到问题:即使长度在另一个数据库的限制内,插入仍然失败,因为相应列的数据太长。
这里的答案是使用
length(cast(column_name as varbinary))
,它给出了以字节为单位的长度;当将上述上下文中的数据复制到使用字节作为字符串长度计数器的数据库时,这应该可以工作。