메인 콘텐츠로 건너뛰기
별칭: generateSeries

구문

start부터 stop까지의 정수를 양 끝값을 포함하여 담은 단일 ‘generate_series’ 컬럼(UInt64)이 있는 테이블을 반환합니다:
generate_series(START, STOP)
STEP으로 지정된 간격으로 start부터 stop까지(양 끝값 포함)의 정수를 담은 단일 generate_series 컬럼(UInt64)이 있는 테이블(table)을 반환합니다:
generate_series(START, STOP, STEP)
STEP는 음수일 수 있으며, 이 경우 수열은 START에서 STOP까지 내림차순으로 생성됩니다. STEP가 음수인데 START < STOP이면 결과는 비어 있습니다.

예시

다음 쿼리는 내용은 같지만 컬럼 이름이 다른 테이블을 반환합니다:
SELECT * FROM numbers(10, 5);
┌─number─┐
│     10 │
│     11 │
│     12 │
│     13 │
│     14 │
└────────┘
SELECT * FROM generate_series(10, 14);
┌─generate_series─┐
│              10 │
│              11 │
│              12 │
│              13 │
│              14 │
└─────────────────┘
그리고 다음 쿼리는 동일한 내용을 가지지만 컬럼 이름이 다른 테이블을 반환합니다(단, 두 번째 방법이 더 효율적입니다):
SELECT * FROM numbers(10, 11) WHERE number % 3 == (10 % 3);
┌─number─┐
│     10 │
│     13 │
│     16 │
│     19 │
└────────┘
SELECT * FROM generate_series(10, 20, 3);
┌─generate_series─┐
│              10 │
│              13 │
│              16 │
│              19 │
└─────────────────┘
내림차순 수열을 생성합니다:
SELECT * FROM generate_series(9, 0, -1);
┌─generate_series─┐
│               9 │
│               8 │
│               7 │
│               6 │
│               5 │
│               4 │
│               3 │
│               2 │
│               1 │
│               0 │
└─────────────────┘
마지막 수정일 2026년 6월 10일