分析函数
# StreamSQL 分析函数
分析函数用于在数据流中进行复杂的分析计算,支持状态管理和历史数据访问。
# LAG - 滞后函数
语法: lag(col, offset, default_value)
描述: 返回当前行之前的第N行的值。offset指定偏移量,default_value为默认值。
增量计算: ✅ 支持
示例:
SELECT device, temperature, lag(temperature, 1) as prev_temp
FROM stream
GROUP BY device, TumblingWindow('10s')
1
2
3
2
3
# LATEST - 最新值函数
语法: latest(col)
描述: 返回指定列的最新值。
增量计算: ✅ 支持
示例:
SELECT device, latest(temperature) as current_temp
FROM stream
GROUP BY device, TumblingWindow('10s')
1
2
3
2
3
# CHANGED_COL - 变化列函数
语法: changed_col(row_data)
描述: 返回发生变化的列名数组。
增量计算: ✅ 支持
示例:
SELECT device, changed_col(*) as changed_columns
FROM stream
GROUP BY device, TumblingWindow('10s')
1
2
3
2
3
# HAD_CHANGED - 变化检测函数
语法: had_changed(col)
描述: 判断指定列的值是否发生变化,返回布尔值。
增量计算: ✅ 支持
示例:
SELECT device, had_changed(status) as status_changed
FROM stream
GROUP BY device, TumblingWindow('10s')
1
2
3
2
3
# 📚 相关文档
在 GitHub 上编辑此页 (opens new window)
上次更新: 2025/07/27, 15:17:27