배열 함수
배열 함수 (Array Functions)
배열 생성, 변환, 집계, 조작을 위한 함수 모음이에요. 고차 함수(Higher-Order function)로 람다를 지원하는 함수가 많아요.
출처: 문서
본문
array
함수 인자로 배열을 만들어요. 인자는 상수여야 하고 공통 슈퍼타입을 공유하는 타입이어야 해요. 어떤 배열을 만들지 명확하지 않으므로 최소한 하나의 인자를 전달해야 해요. 즉 이 함수로 빈 배열을 만들 수는 없어요. 빈 배열을 만들려면 emptyArray* 함수를 사용하세요. 동일한 기능은 [ ] 연산자로도 사용할 수 있어요.
구문 (Syntax)
array(x1 [, x2, ..., xN])
반환 값 (Returned value)
전달된 인자 중 가장 작은 공통 타입이 'T'인 배열. Array(T)
arrayAUCPR
정밀도-재현율(PR) 곡선 아래 면적을 계산해요. 정밀도-재현율 곡선은 모든 임계값에 걸쳐 y축에 정밀도, x축에 재현율을 그려 만들어져요. 결과 값은 0에서 1까지의 범위이며, 점수가 NaN이면 결과도 NaN이에요. 값이 클수록 모델 성능이 좋음을 나타내요. PR AUC는 특히 불균형 데이터셋에서 ROC AUC보다 더 명확한 성능 비교를 제공해요.
구문 (Syntax)
arrayAUCPR(scores, labels[, partial_offsets])
별칭 (Aliases): arrayPRAUC
반환 값 (Returned value)
정밀도-재현율(PR) 곡선 아래 면적, 점수가 NaN이면 NaN. Float64
arrayAll
람다 func(x [, y1, y2, ... yN])이 모든 요소에 대해 참을 반환하면 1을 반환하고, 그 외에는 0을 반환해요. arrayAll은 고차 함수예요.
구문 (Syntax)
arrayAll(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
반환 값 (Returned value)
람다 함수가 모든 요소에 대해 참을 반환하면 1, 그 외에는 0. UInt8
arrayAutocorrelation
배열의 자기상관(autocorrelation)을 계산해요. max_lag가 제공되면 범위 [0, max_lag)의 지연에 대해서만 상관을 계산해요. 제공되지 않으면 가능한 모든 지연에 대해 계산해요.
구문 (Syntax)
arrayAutocorrelation(arr, [max_lag])
반환 값 (Returned value)
Float64 배열. 분산이 0이면 NaN을 반환해요. Array(Float64)
arrayAvg
소스 배열 요소의 평균을 반환해요. 람다 함수 func가 지정되면 람다 결과 요소의 평균을 반환해요.
구문 (Syntax)
arrayAvg([func(x[, y1, ..., yN])], source_arr[, cond1_arr, ... , condN_arr])
반환 값 (Returned value)
소스 배열 요소의 평균, 람다가 제공되면 람다 결과 요소의 평균. Float64
arrayBottomK
입력 배열의 K개의 가장 작은 요소를 오름차순으로 정렬해 반환해요. 람다 함수 f가 지정되면 각 요소에 f를 적용한 결과로 요소를 비교해요. NULL 값은 건너뛰고 결과에 나타나지 않아요. 결과 크기는 최대 K이며 입력 배열에 K보다 적은 비-null 요소가 있으면 더 작을 수 있어요. arrayBottomK는 고차 함수예요. 참고:
arrayTopK— 대신 K개의 가장 큰 요소를 반환해요.arrayPartialSort— 동일한 K개 요소를 위치[1..K]에 생성하지만 나머지 요소를 불특정 순서로 유지하고 null을 건너뛰지 않아요.
구문 (Syntax)
arrayBottomK([f,] K, arr [, arr1, ... ,arrN])
반환 값 (Returned value)
오름차순으로 정렬된 가장 작은 값을 가진(또는 가장 작은 람다 결과를 가진) arr의 최대 K개 요소. null은 건너뛰어요.
arrayCompact
배열에서 연속된 중복 요소(null 값 포함)를 제거해요. 결과 배열의 값 순서는 소스 배열의 순서에 따라 결정돼요.
구문 (Syntax)
arrayCompact(arr)
반환 값 (Returned value)
중복 값이 없는 배열. Array(T)
arrayConcat
인자로 전달된 배열들을 결합해요.
구문 (Syntax)
arrayConcat(arr1 [, arr2, ... , arrN])
반환 값 (Returned value)
제공된 배열 인자들로 만든 단일 결합 배열. Array(T)
arrayCount
func(arr1[i], ..., arrN[i])이 참을 반환하는 요소의 개수를 반환해요. func가 지정되지 않으면 배열에서 0이 아닌 요소의 개수를 반환해요. arrayCount는 고차 함수예요.
구문 (Syntax)
arrayCount([func, ] arr1, ...)
반환 값 (Returned value)
func가 참을 반환하는 요소의 수. 그 외에는 배열의 0이 아닌 요소 수. UInt32
arrayCumSum
소스 배열 요소의 부분(누적) 합 배열을 반환해요. 람다 함수가 지정되면 각 위치에서 람다를 배열 요소에 적용해 합을 계산해요.
구문 (Syntax)
arrayCumSum([func,] arr1[, arr2, ... , arrN])
반환 값 (Returned value)
소스 배열 요소의 부분 합 배열. Array(T)
arrayCumSumNonNegative
소스 배열 요소의 부분(누적) 합 배열을 반환하되, 음수 누적 합은 0으로 대체해요.
구문 (Syntax)
arrayCumSumNonNegative([func,] arr1[, arr2, ... , arrN])
반환 값 (Returned value)
소스 배열 요소의 부분 합 배열, 음수 누적 합은 0으로 대체. Array(T)
arrayDifference
인접한 배열 요소 간 차이 배열을 계산해요. 결과 배열의 첫 요소는 0, 두 번째는 arr[1] - arr[0], 세 번째는 arr[2] - arr[1] 등이에요.
구문 (Syntax)
arrayDifference(arr)
반환 값 (Returned value)
인접한 배열 요소 간 차이 배열. UInt*
arrayDistinct
배열의 고유 요소만 담은 배열을 반환해요.
구문 (Syntax)
arrayDistinct(arr)
반환 값 (Returned value)
고유 요소를 담은 배열. Array(T)
arrayDotProduct
두 배열의 점곱(dot product)을 반환해요. 두 벡터의 크기는 같아야 해요. 배열과 튜플은 혼합 요소 타입을 포함할 수도 있어요.
구문 (Syntax)
arrayDotProduct(v1, v2)
반환 값 (Returned value)
두 벡터의 점곱. (U)Int*, Float* 또는 Decimal
arrayElement
인덱스 n으로 제공된 배열의 요소를 가져와요. n은 모든 정수 타입이 될 수 있어요. 인덱스가 배열 범위를 벗어나면 기본값을 반환해요. ClickHouse의 배열은 1부터 시작(one-indexed)해요. 음수 인덱스는 끝에서부터 셈(예: arr[-1]은 마지막 항목). n이 정수 배열이면 지정된 위치의 요소 배열을 반환해요(gather 연산). 첫 번째 인자는 Map, QBit, JSON일 수도 있어요.
구문 (Syntax)
arrayElement(arr, n)
반환 값 (Returned value)
n이 스칼라면 T 타입의 요소. n이 배열이면 Array(Nullable(T)) 또는 Array(T). Map이면 V 타입 값, JSON이면 경로에 저장된 값.
arrayElementOrNull
인덱스 n으로 제공된 배열의 요소를 가져와요. 인덱스가 배열 범위를 벗어나면 기본값 대신 NULL을 반환해요(결과 타입이 nullable일 때). ClickHouse의 배열은 1부터 시작해요. 음수 인덱스는 끝에서부터 셈. JSON은 여기서 지원되지 않아요. arrayElement를 사용하세요.
구문 (Syntax)
arrayElementOrNull(arr, n)
반환 값 (Returned value)
n이 스칼라면 Nullable(T) 또는 T. n이 배열이면 Array(Nullable(T)) 또는 Array(T).
arrayEnumerate
배열 [1, 2, 3, ..., length(arr)]을 반환해요. 보통 ARRAY JOIN 절과 함께 사용돼요. ARRAY JOIN 적용 후 각 배열에 대해 무언가를 한 번만 세는 것을 허용해요.
구문 (Syntax)
arrayEnumerate(arr)
반환 값 (Returned value)
[1, 2, 3, ..., length(arr)] 배열. Array(UInt32)
arrayEnumerateDense
소스 배열과 같은 크기의 배열을 반환하며, 각 요소가 소스 배열에서 처음 나타나는 위치를 나타내요.
구문 (Syntax)
arrayEnumerateDense(arr)
반환 값 (Returned value)
arr과 같은 크기의 배열로, 각 요소가 소스 배열에서 처음 나타나는 위치. Array(T)
arrayEnumerateDenseRanked
소스 배열과 같은 크기의 배열을 반환하며, 각 요소가 소스 배열에서 처음 나타나는 위치를 나타내요. 배열 내부를 얼마나 깊게 볼지 지정할 수 있는 다차원 배열 열거를 허용해요.
구문 (Syntax)
arrayEnumerateDenseRanked(clear_depth, arr, max_array_depth)
반환 값 (Returned value)
각 요소가 소스 배열에서 처음 나타나는 위치를 나타내는 배열. Array
arrayEnumerateUniq
소스 배열과 같은 크기의 배열을 반환하며, 각 요소가 동일한 값을 가진 요소 중에서 어떤 위치에 있는지 나타내요. ARRAY JOIN과 배열 요소 집계에 유용해요. 함수는 같은 크기의 여러 배열을 인자로 받을 수 있어요. 이 경우 모든 배열에서 같은 위치의 요소의 튜플에 대해 고유성을 고려해요.
구문 (Syntax)
arrayEnumerateUniq(arr1[, arr2, ... , arrN])
반환 값 (Returned value)
각 요소가 동일한 값 또는 튜플 중에서의 위치인 배열. Array(T)
arrayEnumerateUniqRanked
소스 배열과 같은 차원의 배열(또는 다차원 배열)을 반환하며, 각 요소가 동일한 값을 가진 요소 중에서 어떤 위치에 있는지 나타내요. 배열 내부를 얼마나 깊게 볼지 지정할 수 있는 다차원 배열 열거를 허용해요.
구문 (Syntax)
arrayEnumerateUniqRanked(clear_depth, arr, max_array_depth)
반환 값 (Returned value)
arr과 같은 크기의 N차원 배열로, 각 요소가 동일한 값의 다른 요소들과의 상대 위치를 보여줘요. Array(T)
arrayExcept
except에 없는 source의 요소를 원래 순서를 유지하며 담은 배열을 반환해요. 두 배열 사이의 집합 차집합 연산을 수행해요. 다음 속성을 유지해요:
source의 요소 순서 보존except에 없는 경우source의 중복 보존- NULL은 별도의 값으로 처리
구문 (Syntax)
arrayExcept(source, except)
반환 값 (Returned value)
except에서 찾지 못한 source의 요소를 담은 입력 배열과 같은 타입의 배열. Array(T)
arrayExists
func(x[, y1, y2, ... yN])이 참을 반환하는 소스 배열의 요소가 하나라도 있으면 1을 반환하고, 그 외에는 0을 반환해요.
구문 (Syntax)
arrayExists(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
반환 값 (Returned value)
람다 함수가 적어도 한 요소에 대해 참을 반환하면 1, 그 외에는 0. UInt8
arrayFill
arrayFill 함수는 소스 배열을 첫 요소부터 마지막까지 순차적으로 처리하며, 각 위치에서 소스·조건 배열의 요소를 사용해 람다 조건을 평가해요. 람다 함수가 위치 i에서 false로 평가되면 해당 요소를 배열의 현재 상태에서 i-1 위치의 요소로 교체해요. 첫 요소는 조건과 관계없이 항상 보존돼요.
구문 (Syntax)
arrayFill(func(x [, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
반환 값 (Returned value)
배열. Array(T)
arrayFilter
람다 함수가 참을 반환하는 소스 배열의 요소만 담은 배열을 반환해요.
구문 (Syntax)
arrayFilter(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])]
반환 값 (Returned value)
소스 배열의 부분 집합. Array(T)
arrayFirst
func(x[, y1, y2, ... yN])이 참을 반환하는 소스 배열의 첫 요소를 반환하고, 그 외에는 기본값을 반환해요.
구문 (Syntax)
arrayFirst(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
반환 값 (Returned value)
λ가 참인 소스 배열의 첫 요소, 그 외에는 T의 기본값.
arrayFirstIndex
func(x[, y1, y2, ... yN])이 참을 반환하는 소스 배열의 첫 요소의 인덱스를 반환하고, 그 외에는 '0'을 반환해요.
구문 (Syntax)
arrayFirstIndex(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
반환 값 (Returned value)
func가 참인 소스 배열의 첫 요소의 인덱스, 그 외에는 0. UInt32
arrayFirstOrNull
func(x[, y1, y2, ... yN])이 참을 반환하는 소스 배열의 첫 요소를 반환하고, 그 외에는 NULL을 반환해요.
구문 (Syntax)
arrayFirstOrNull(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
반환 값 (Returned value)
func가 참인 소스 배열의 첫 요소, 그 외에는 NULL.
arrayFlatten
배열의 배열을 평평한 배열로 변환해요. 함수는:
- 중첩 배열의 어떤 깊이에도 적용돼요.
- 이미 평평한 배열은 변경하지 않아요.
구문 (Syntax)
arrayFlatten(arr)
별칭 (Aliases): flatten
반환 값 (Returned value)
다차원 배열에서 평평해진 배열. Array(T)
arrayFlattenedLength
다차원 배열이 arrayFlatten 함수로 평평해진 것처럼 전체 요소 수를 반환해요. PostgreSQL의 cardinality에 해당해요.
구문 (Syntax)
arrayFlattenedLength(arr)
반환 값 (Returned value)
모든 중첩 배열이 평평해진 후 배열의 요소 수. UInt64
arrayFold
하나 이상의 같은 크기 배열에 람다 함수를 적용하고 결과를 누산기(accumulator)에 수집해요.
구문 (Syntax)
arrayFold(λ(acc, x1 [, x2, x3, ... xN]), arr1 [, arr2, arr3, ... arrN], acc)
반환 값 (Returned value)
최종 acc 값.
arrayIntersect
여러 배열을 받아 모든 소스 배열에 존재하는 요소를 담은 배열을 반환해요. 결과는 고유 값만 포함해요.
구문 (Syntax)
arrayIntersect(arr, arr1, ..., arrN)
반환 값 (Returned value)
모든 N개 배열에 존재하는 고유 요소 배열. Array(T)
arrayJaccardIndex
두 배열의 자카드 지수(Jaccard index)를 반환해요.
구문 (Syntax)
arrayJaccardIndex(arr_x, arr_y)
반환 값 (Returned value)
arr_x와 arr_y의 자카드 지수. Float64
arrayJoin
배열을 담은 행을 받아 배열의 각 요소에 대해 하나씩 여러 행을 생성해 펼쳐요. 다른 컬럼의 모든 값은 복사되고, 이 함수가 적용된 컬럼의 값만 해당 배열 값으로 교체돼요. unnest(26.5부터)는 함수 호출 형태(SELECT unnest(arr))에서 arrayJoin의 대소문자 구분 없는 별칭이에요. PostgreSQL 테이블 소스 구문은 지원되지 않아요. 그런 쿼리에는 ARRAY JOIN 절을 사용하세요.
구문 (Syntax)
arrayJoin(arr)
별칭 (Aliases): unnest
반환 값 (Returned value)
arr에서 펼쳐진 행 집합.
arrayLast
func(x[, y1, y2, ... yN])이 참을 반환하는 소스 배열의 마지막 요소를 반환해요.
구문 (Syntax)
arrayLast(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
반환 값 (Returned value)
func가 참인 소스 배열의 마지막 요소, 그 외에는 T의 기본값.
arrayLastIndex
func(x[, y1, y2, ... yN])이 참을 반환하는 소스 배열의 마지막 요소의 인덱스를 반환해요.
구문 (Syntax)
arrayLastIndex(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
반환 값 (Returned value)
func가 참인 소스 배열의 마지막 요소의 인덱스, 그 외에는 0. UInt32
arrayLastOrNull
func(x[, y1, y2, ... yN])이 참을 반환하는 소스 배열의 마지막 요소를 반환하고, 그 외에는 NULL을 반환해요.
구문 (Syntax)
arrayLastOrNull(func(x[, y1, ..., yN]), source_arr[, cond1_arr, ... , condN_arr])
반환 값 (Returned value)
func가 참인 소스 배열의 마지막 요소, 그 외에는 NULL.
arrayLevenshteinDistance
두 배열 사이의 Levenshtein 거리를 계산해요.
구문 (Syntax)
arrayLevenshteinDistance(arr1, arr2)
반환 값 (Returned value)
두 배열 사이의 Levenshtein 거리. UInt64
arrayLevenshteinDistanceWeighted
가중치를 적용한 Levenshtein 거리를 계산해요.
구문 (Syntax)
arrayLevenshteinDistanceWeighted(arr1, weight1, arr2, weight2)
반환 값 (Returned value)
가중치가 적용된 Levenshtein 거리. UInt64
arrayMap
첫 번째 인자(람다 함수)의 결과를 각 배열 요소에 적용해 배열을 반환해요. arrayMap은 고차 함수예요.
구문 (Syntax)
arrayMap(x -> expression, arr)
반환 값 (Returned value)
람다 함수를 각 요소에 적용한 결과 배열. Array(T)
arrayMax
소스 배열 요소의 최대값을 반환해요.
구문 (Syntax)
arrayMax([func, ] arr)
반환 값 (Returned value)
소스 배열 요소의 최대. Float64
arrayMin
소스 배열 요소의 최소값을 반환해요.
구문 (Syntax)
arrayMin([func, ] arr)
반환 값 (Returned value)
소스 배열 요소의 최소. Float64
arrayNormalizedGini
배열의 정규화된 지니(Gini) 계수를 계산해요.
구문 (Syntax)
arrayNormalizedGini(a, b)
반환 값 (Returned value)
정규화된 지니 계수. Float64
arrayPartialReverseSort
배열의 가장 큰 K개 요소를 내림차순으로 위치 [1..K]에 생성하고 나머지 요소는 불특정 순서로 유지해요.
구문 (Syntax)
arrayPartialReverseSort([func,] limit, arr)
반환 값 (Returned value)
부분 정렬된 배열.
arrayPartialShuffle
배열의 일부를 섞어요.
구문 (Syntax)
arrayPartialShuffle(arr, limit)
arrayPartialSort
배열의 가장 작은 K개 요소를 오름차순으로 위치 [1..K]에 생성하고 나머지 요소는 불특정 순서로 유지해요. null을 건너뛰지 않아요.
구문 (Syntax)
arrayPartialSort([func,] limit, arr)
반환 값 (Returned value)
부분 정렬된 배열.
arrayPopBack
배열에서 마지막 요소를 제거한 배열을 반환해요. 배열이 비어 있으면 빈 배열을 반환해요.
구문 (Syntax)
arrayPopBack(arr)
반환 값 (Returned value)
마지막 요소를 제거한 배열. Array(T)
arrayPopFront
배열에서 첫 요소를 제거한 배열을 반환해요. 배열이 비어 있으면 빈 배열을 반환해요.
구문 (Syntax)
arrayPopFront(arr)
반환 값 (Returned value)
첫 요소를 제거한 배열. Array(T)
arrayProduct
소스 배열 요소의 곱을 반환해요.
구문 (Syntax)
arrayProduct(arr)
반환 값 (Returned value)
배열 요소의 곱. Float64
arrayPushBack
배열 끝에 요소를 하나 추가한 배열을 반환해요.
구문 (Syntax)
arrayPushBack(arr, elem)
반환 값 (Returned value)
끝에 elem을 추가한 배열. Array(T)
arrayPushFront
배열 앞에 요소를 하나 추가한 배열을 반환해요.
구문 (Syntax)
arrayPushFront(arr, elem)
반환 값 (Returned value)
앞에 elem을 추가한 배열. Array(T)
arrayROCAUC
수신자 조작 특성(ROC) 곡선 아래 면적을 계산해요. NaN 점수가 있으면 NaN을 반환해요.
구문 (Syntax)
arrayROCAUC(scores, labels[, partial_offsets])
별칭 (Aliases): arrayAUC
반환 값 (Returned value)
ROC 곡선 아래 면적, 또는 점수가 NaN이면 NaN. Float64
arrayRandomSample
배열에서 무작위로 K개 요소를 샘플링해요.
구문 (Syntax)
arrayRandomSample(arr, K)
반환 값 (Returned value)
무작위 샘플 배열.
arrayReduce
집계 함수를 배열 요소에 적용해요.
구문 (Syntax)
arrayReduce(agg_func, arr1, ..., arrN)
반환 값 (Returned value)
집계 결과.
arrayReduceInRanges
배열의 지정된 범위에 집계 함수를 적용해요.
구문 (Syntax)
arrayReduceInRanges(agg_func, ranges, arr1, ..., arrN)
반환 값 (Returned value)
각 범위에 대한 집계 결과 배열.
arrayRemove
배열에서 지정한 요소를 모두 제거한 배열을 반환해요.
구문 (Syntax)
arrayRemove(elem, arr)
반환 값 (Returned value)
elem을 제거한 배열. Array(T)
arrayResize
배열의 길이를 변경해요. 더 길어지면 0(또는 지정된 기본값)으로 채우고, 더 짧아지면 잘라요.
구문 (Syntax)
arrayResize(arr, size[, extend_by, extend_value])
반환 값 (Returned value)
조정된 배열. Array(T)
arrayReverse
배열 요소의 순서를 뒤집어 반환해요.
구문 (Syntax)
arrayReverse(arr)
반환 값 (Returned value)
순서가 뒤집힌 배열. Array(T)
arrayReverseFill
배열을 거꾸로(마지막 요소부터) 처리하며, 배열Fill과 유사하게 동작해요.
구문 (Syntax)
arrayReverseFill(func, arr[, cond1, ...])
arrayReverseSort
배열을 내림차순으로 정렬해요. 람다가 지정되면 람다 결과를 기준으로 정렬해요.
구문 (Syntax)
arrayReverseSort([func,] arr)
반환 값 (Returned value)
정렬된 배열. Array(T)
arrayReverseSplit
배열을 조건에 따라 뒤에서부터 분할해요.
구문 (Syntax)
arrayReverseSplit(func, arr)
arrayRotateLeft
배열을 왼쪽으로 한 위치씩 회전시켜요.
구문 (Syntax)
arrayRotateLeft(arr)
반환 값 (Returned value)
왼쪽으로 회전한 배열.
arrayRotateRight
배열을 오른쪽으로 한 위치씩 회전시켜요.
구문 (Syntax)
arrayRotateRight(arr)
반환 값 (Returned value)
오른쪽으로 회전한 배열.
arrayShiftLeft
배열을 왼쪽으로 이동시키고 잘린 위치에 기본값을 채워요.
구문 (Syntax)
arrayShiftLeft(arr, n[, default])
반환 값 (Returned value)
왼쪽으로 이동한 배열.
arrayShiftRight
배열을 오른쪽으로 이동시키고 잘린 위치에 기본값을 채워요.
구문 (Syntax)
arrayShiftRight(arr, n[, default])
반환 값 (Returned value)
오른쪽으로 이동한 배열.
arrayShingles
배열의 각 k-셔글(연속 부분 배열)을 담은 배열을 반환해요.
구문 (Syntax)
arrayShingles(arr, k)
반환 값 (Returned value)
k-셔글의 배열. Array(Array(T))
arrayShuffle
배열 요소를 무작위로 섞어요.
구문 (Syntax)
arrayShuffle(arr[, seed])
반환 값 (Returned value)
섞인 배열.
arraySimilarity
두 배열의 유사도를 측정해요.
구문 (Syntax)
arraySimilarity(arr1, arr2)
arraySlice
배열에서 지정된 범위의 부분 배열을 반환해요.
구문 (Syntax)
arraySlice(arr, offset[, length])
반환 값 (Returned value)
슬라이스한 부분 배열. Array(T)
arraySort
배열을 오름차순으로 정렬해요. 람다가 지정되면 람다 결과를 기준으로 정렬해요.
구문 (Syntax)
arraySort([func,] arr)
반환 값 (Returned value)
정렬된 배열. Array(T)
arraySplit
배열을 조건에 따라 분할해요.
구문 (Syntax)
arraySplit(func, arr)
arraySum
소스 배열 요소의 합을 반환해요.
구문 (Syntax)
arraySum([func,] arr)
반환 값 (Returned value)
배열 요소의 합. Float64
arraySymmetricDifference
두 배열의 대칭 차집합(한 쪽에만 있는 요소)을 반환해요.
구문 (Syntax)
arraySymmetricDifference(arr1, arr2)
반환 값 (Returned value)
대칭 차집합 배열.
arrayTopK
주어진 컬럼에서 가장 빈번한 K개 값을 담은 배열을 반환해요.
구문 (Syntax)
arrayTopK(arr, N)
반환 값 (Returned value)
가장 빈번한 N개 값의 배열.
arrayTranspose
2차원 배열을 전치(transpose)해요.
구문 (Syntax)
arrayTranspose(arr)
반환 값 (Returned value)
전치된 배열.
arrayUnion
여러 배열의 합집합을 반환해요.
구문 (Syntax)
arrayUnion(arr1, ..., arrN)
반환 값 (Returned value)
합집합 배열.
arrayUniq
배열의 서로 다른 요소의 개수를 반환해요.
구문 (Syntax)
arrayUniq(arr[, ...])
반환 값 (Returned value)
서로 다른 요소의 수. UInt32
arrayWithConstant
지정된 값으로 채워진 배열을 만듭니다.
구문 (Syntax)
arrayWithConstant(N, elem)
arrayZip
여러 배열을 요소가 원래 배열의 요소인 튜플로 그룹화해요.
구문 (Syntax)
arrayZip(arr1, arr2, ..., arrN)
arrayZipUnaligned
길이가 다른 여러 배열을 정렬하지 않고(zip하되) 그룹화해요.
구문 (Syntax)
arrayZipUnaligned(arr1, arr2, ...)
countEqual
배열에서 지정한 요소와 같은 요소의 개수를 반환해요.
구문 (Syntax)
countEqual(arr, x)
반환 값 (Returned value)
x와 같은 요소의 수. UInt32
empty
배열이 비어있는지 확인해요.
구문 (Syntax)
empty(arr)
반환 값 (Returned value)
배열이 비어 있으면 1, 그 외에는 0. UInt8
emptyArrayDate / emptyArrayDateTime / emptyArrayFloat32 / emptyArrayFloat64 / emptyArrayInt16 / emptyArrayInt32 / emptyArrayInt64 / emptyArrayInt8 / emptyArrayString / emptyArrayUInt16 / emptyArrayUInt32 / emptyArrayUInt64 / emptyArrayUInt8
해당 타입의 빈 배열을 만들어요.
emptyArrayToSingle
빈 배열을 기본값을 담은 단일 배열로 변환해요.
구문 (Syntax)
emptyArrayToSingle(arr)
has
배열에 지정한 요소가 있는지 확인해요.
구문 (Syntax)
has(arr, elem)
반환 값 (Returned value)
있으면 1, 그 외에는 0. UInt8
hasAll
첫 번째 배열이 두 번째 배열의 모든 요소를 포함하는지 확인해요.
구문 (Syntax)
hasAll(arr, brr)
반환 값 (Returned value)
모든 요소를 포함하면 1, 그 외에는 0. UInt8
hasAny
두 배열이 공통 요소를 하나라도 가지는지 확인해요.
구문 (Syntax)
hasAny(arr1, arr2)
반환 값 (Returned value)
공통 요소가 있으면 1, 그 외에는 0. UInt8
hasSubstr
배열이 지정한 요소 부분(부분 배열)을 포함하는지 확인해요.
구문 (Syntax)
hasSubstr(arr, subarr)
반환 값 (Returned value)
포함하면 1, 그 외에는 0. UInt8
indexOf
배열에서 지정한 요소가 처음 나타나는 인덱스를 반환해요.
구문 (Syntax)
indexOf(arr, x)
반환 값 (Returned value)
x의 인덱스, 없으면 0. UInt32
indexOfAssumeSorted
정렬된 배열에서 지정한 요소가 나타나는 인덱스를 반환해요.
구문 (Syntax)
indexOfAssumeSorted(arr, x)
length
배열의 요소 수를 반환해요.
구문 (Syntax)
length(arr)
반환 값 (Returned value)
배열의 길이. UInt64
notEmpty
배열이 비어 있지 않은지 확인해요.
구문 (Syntax)
notEmpty(arr)
반환 값 (Returned value)
배열이 비어 있지 않으면 1, 그 외에는 0. UInt8
notHas
배열에 지정한 요소가 없는지 확인해요. has의 반대예요.
구문 (Syntax)
notHas(arr, elem)
반환 값 (Returned value)
없으면 1, 그 외에는 0. UInt8
randomHadamardTransform
배열에 무작위 아다마르 변환(Random Hadamard Transform)을 적용해요.
구문 (Syntax)
randomHadamardTransform(arr[, seed])
range
0부터 끝까지(제외)의 정수 배열을 만들어요. [N..M] 연산자로도 지정할 수 있어요.
구문 (Syntax)
range(N) -- [0, 1, ..., N-1]
range([start, ] end[, step])
반환 값 (Returned value)
정수 배열. Array(UInt*)
replicate
단일 값으로 구성된 배열을 반복해요.
구문 (Syntax)
replicate(x, arr)
reverse
배열 요소의 순서를 뒤집어요. arrayReverse의 별칭이에요.
구문 (Syntax)
reverse(arr)