分析函数
  # 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/09/03, 10:09:04