본문으로 바로가기
본문으로 바로가기

maxIntersections

maxIntersections

도입 버전: v20.1

여러 구간으로 이루어진 집합에서, 모든 구간이 서로 최소 한 번 이상 교차한다고 가정할 때 구간들이 서로 교차하는 최대 횟수를 계산하는 집계 FUNCTION입니다.

구문

maxIntersections(start_column, end_column)

인자

  • start_column — 각 구간의 시작을 나타내는 수치형 컬럼입니다. start_columnNULL 또는 0이면 해당 구간은 건너뜁니다. (U)Int* 또는 Float*
  • end_column — 각 구간의 끝을 나타내는 수치형 컬럼입니다. end_columnNULL 또는 0이면 해당 구간은 건너뜁니다. (U)Int* 또는 Float*

반환 값

서로 교차하는 구간들의 최대 개수를 반환합니다. UInt64

예시

최대 교차 개수 계산

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;
┌─maxIntersections(start, end)─┐
│                            3 │
└──────────────────────────────┘