跳转到主要内容

maxIntersections

引入版本:v20.1.0 用于计算一组时间间隔之间相互相交的最大次数的聚合函数 (前提是所有时间间隔至少相交一次) 。 语法
maxIntersections(start_column, end_column)
参数
  • start_column — 表示每个区间起点的数值列。如果 start_columnNULL 或 0,则会跳过该区间。(U)Int*Float*
  • end_column — 表示每个区间终点的数值列。如果 end_columnNULL 或 0,则会跳过该区间。(U)Int*Float*
返回值 返回相交区间的最大数量。UInt64 示例 计算最大相交数
Query
CREATE TABLE my_events (
    start UInt32,
    end UInt32
)
ENGINE = MergeTree
ORDER BY tuple();

INSERT INTO my_events VALUES
(1, 3),
(1, 6),
(2, 5),
(3, 7);

SELECT maxIntersections(start, end) FROM my_events;
Response
┌─maxIntersections(start, end)─┐
│                            3 │
└──────────────────────────────┘
最后修改于 2026年6月10日