You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

IoTDB 1.3.2:多聚合函数联合查询时结果错位问题

问题解答

是否为已知缺陷?

这是Apache IoTDB 1.3.2的已知缺陷,属于聚合查询中包含计算表达式(如max_value - min_value)时的结果列映射错误问题,官方后续版本已修复该bug。

临时SQL调整方案(不升级版本)

通过子查询将每个聚合/计算项单独计算,再合并结果,避免列值错位:

SELECT 
  t1.depthOfDischarge,
  t2.StkVavg,
  t3.StkVdiff,
  t4.StkTavg,
  t5.StkTdiff
FROM
  (SELECT max_value(StkSoc) - min_value(StkSoc) AS depthOfDischarge FROM `root.soms.s5.d862` WHERE `time` >= 1758902400000 AND `time` <= 1758954766049) t1,
  (SELECT max_value(StkVavg) AS StkVavg FROM `root.soms.s5.d862` WHERE `time` >= 1758902400000 AND `time` <= 1758954766049) t2,
  (SELECT max_value(StkVdiff) AS StkVdiff FROM `root.soms.s5.d862` WHERE `time` >= 1758902400000 AND `time` <= 1758954766049) t3,
  (SELECT max_value(StkTavg) AS StkTavg FROM `root.soms.s5.d862` WHERE `time` >= 1758902400000 AND `time` <= 1758954766049) t4,
  (SELECT max_value(StkTdiff) AS StkTdiff FROM `root.soms.s5.d862` WHERE `time` >= 1758902400000 AND `time` <= 1758954766049) t5

版本升级建议

强烈建议升级至IoTDB 1.3.3及以上版本,或直接迁移到更稳定的2.x系列版本。1.3.3版本已修复该聚合查询列错位的问题,后续版本还优化了聚合性能、兼容性及稳定性,能彻底解决这类问题。

内容的提问来源于stack exchange,提问作者Yueyue Wang

火山引擎 最新活动