要获得与亚马逊 Timestream 类似的功能 LiveAnalytics,可以考虑适用于 InfluxDB 的亚马逊 Timestream。适用于 InfluxDB 的 Amazon Timestream 提供简化的数据摄取和个位数毫秒级的查询响应时间,以实现实时分析。点击此处了解更多信息。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
数组函数
的 Timestream LiveAnalytics 支持以下数组函数。
| 函数 | 输出数据类型 | 说明 |
|---|---|---|
|
array_distinct(x) |
array |
从数组 x 中删除重复值。
示例结果: |
|
array_intersect(x, y) |
array |
返回包含 x 和 y 交集元素的数组,且不含重复项。
示例结果: |
|
array_union(x, y) |
array |
返回包含 x 和 y 并集元素的数组,且不含重复项。
示例结果: |
|
array_except(x, y) |
array |
返回数组,包含 x 中的元素,但不包含 y 中的元素,且不包含重复项。
示例结果: |
|
array_join(x, delimiter, null_replacement) |
varchar |
使用分隔符和可选字符串连接给定数组的元素以替换 null 值。
示例结果: |
|
array_max(x) |
与数组元素相同 |
返回输入数组中的最大值。
示例结果: |
|
array_min(x) |
与数组元素相同 |
返回输入数组中的最小值。
示例结果: |
|
array_position(x, element) |
bigint |
返回元素在数组 x 中首次出现的位置(如果未找到,则返回 0)。
示例结果: |
|
array_remove(x, element) |
array |
从数组 x 中移除所有等于元素的元素。
示例结果: |
|
array_sort(x) |
array |
对数组 x 进行排序并返回。x 的元素必须可排序。Null 元素将放置在返回数组的末尾。
示例结果: |
|
arrays_overlap(x, y) |
布尔值 |
测试数组 x 和 y 是否有共同的非 null 元素。如果没有共同的非 null 元素,但任何一个数组包含 null 值,则返回 null。
示例结果: |
|
cardinality(x) |
bigint |
返回数组 x 的大小。
示例结果: |
|
concat(array1, array2, ..., arrayN) |
array |
连接数组 array1、array2、...、arrayN。
示例结果: |
|
element_at(array(E), index) |
E |
返回数组中指定索引处的元素。如果索引 < 0,则 element_at 从最后一个元素开始访问直至第一个元素。
示例结果: |
|
repeat(element, count) |
array |
重复元素计数次数。
示例结果: |
|
reverse(x) |
array |
返回一个数组,其顺序与数组 x 的顺序相反。
示例结果: |
|
sequence(start, stop) |
array(bigint) |
生成从 start 到 stop 的整数序列,如果 start 小于或等于 stop,则以 1 为增量,否则以 -1 为增量。
示例结果: |
|
sequence(start, stop, step) |
array(bigint) |
生成从 start 到 stop 的整数序列,以 step 为增量。
示例结果: |
|
sequence(start, stop) |
array(timestamp) |
生成从 start date 到 stop date 的时间戳序列,以 1 天为增量。
示例结果: |
|
sequence(start, stop, step) |
array(timestamp) |
生成从 start 到 stop 的时间戳序列,以 step 为增量。step 的数据类型是间隔。
示例结果: |
|
shuffle(x) |
array |
生成给定数组 x 的随机排列。
示例结果: |
|
slice(x, start, length) |
array |
子集数组 x 从索引开头开始(如果起始为负数,则从末尾开始),长度为 length。
示例结果: |
|
zip(array1, array2[, ...]) |
array(row) |
按元素将给定数组合并为单个行数组。如果参数长度不一致,则用 NULL 填充缺失值。
示例结果: |