我正在使用红移
我有一张这样的桌子:metric是一种超类型,使用红移中的array((函数构建
用户 | |
---|---|
红色 | 阵列(2021,120( |
红色 | array(2020199( |
蓝色 | 阵列(2021,151( |
如果您熟悉Redshift Spectrum,那么当您查询外部模式时,其逻辑与unnest数组字段非常相似。
在您的情况下,查询非常简单:
SELECT t.user, max(metric)
FROM my_schema.my_table as t, t.metrics as metric
GROUP BY 1
如果数组包含除数字类型之外的其他类型,您可以简单地将其强制转换为int或double-like:
max(metric::int)
这样,像"hello world"
这样的纯字符串被认为是null,但像"33333"
这样的字符串被转换为int