SQL 选择器函数
SQL 选择器函数旨在与时间序列数据一起使用。它们的行为类似于聚合函数,即它们接收一组数据并返回一个单一值。然而,选择器独特之处在于,它们返回一个包含 时间值 的 结构体,除了计算值之外。
选择器函数如何工作?
每个选择器函数返回一个 Arrow 结构体(类似于 JSON 对象),表示从每个组中指定列的单个时间和值。返回的时间和值取决于选择器函数中的逻辑。例如,selector_first
返回组中第一行的指定列的值。selector_max
返回组中指定列的最大值。
选择器结构体模式
选择器函数返回的结构体有两个属性
- 时间:所选行的
时间
值 - 值:所选行中指定列的值
{time: 2023-01-01T00:00:00Z, value: 72.1}
正在使用的选择器函数
在您的 SELECT
语句中,执行一个选择器函数,并使用方括号表示法引用 返回的结构体 的属性以填充列值
SELECT
selector_first(temp, time)['time'] AS time,
selector_first(temp, time)['value'] AS temp,
room
FROM home
GROUP BY room
选择器函数
selector_min
返回所选列的最小值和时间戳。
selector_min(expression, timestamp)
参数
- 表达式:要操作的表达式。可以是常量、列或函数,以及字符串或算术运算符的任意组合。
- 时间戳:时间表达式。可以是常量、列或函数。
selector_max
返回所选列和时间戳的最大值。
selector_max(expression, timestamp)
参数
- 表达式:要操作的表达式。可以是常量、列或函数,以及字符串或算术运算符的任意组合。
- 时间戳:时间表达式。可以是常量、列或函数。
selector_first
返回按时间升序排序的第一个值。
selector_first(expression, timestamp)
参数
- 表达式:要操作的表达式。可以是常量、列或函数,以及字符串或算术运算符的任意组合。
- 时间戳:时间表达式。可以是常量、列或函数。
selector_last
返回按时间升序排序的最后一个值。
selector_last(expression, timestamp)
参数
- 表达式:要操作的表达式。可以是常量、列或函数,以及字符串或算术运算符的任意组合。
- 时间戳:时间表达式。可以是常量、列或函数。
这个页面有帮助吗?
感谢您的反馈!