在 Presto 中将数组(双精度)转换为 varchar

Convert array(double) to varchar in Presto

我正在尝试在 Presto 中将 Array(double) 转换为 varchar。 样本值: [99.0,98.0,99.0,95.0,99.0,88.0,90.0,79.0,90.0,56.0,90.0,90.0,92.0,90.0,93.0,99.0]

我尝试了下面的转换函数:

cast(colname as varchar)

但收到此错误消息:“无法将 array(double) 转换为 varchar”

关于如何将此数组转换为 varchar 的任何想法。 谢谢

您可以使用 array_join:

array_join(x, delimiter, null_replacement)varchar

Concatenates the elements of the given array using the delimiter and an optional string to replace nulls.

SELECT array_join(ARRAY [1, 2],  ', ') -- 1, 2

或转换为 json 并使用 json_format:

SELECT json_format(cast(ARRAY [1, 2] as json)) -- [1,2]