clickhouse分组后对max()值相同的记录做二次合并

背景

想用一条sql来查询某个设备指标的最新时间点的值, 但是最新时间点的值会有多条, 即在2024-06-01 10:00:00会存在多条不同value值的记录, 需要进行合并为数据, 原本以为argMax(value,clock)可以满足条件, 但是clickhouse不支持聚合函数多重聚合, 所以选用了下面的方式

SELECT cmdbId, metricCode, groupArray(value) as aggValue
FROM metric_2d
WHERE (cmdbId, metricCode, clock) IN (
    SELECT cmdbId, metricCode, max(clock)
    FROM metric_2d
    GROUP BY cmdbId, metricCode
)
GROUP BY cmdbId, metricCode;
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容