メインコンテンツへスキップ
メインコンテンツへスキップ

uniqExact

uniqExact

導入バージョン: v1.1

引数の異なる値の個数を正確に計算します。

注意

uniqExact 関数は、異なる値の数が増えるにつれて状態のサイズが無制限に増加するため、uniq よりも多くのメモリを使用します。 完全に正確な結果がどうしても必要な場合にのみ uniqExact 関数を使用してください。 それ以外の場合は uniq 関数を使用してください。

構文

uniqExact(x[, ...])

引数

戻り値

引数として与えられた異なる値の正確な個数を UInt64 として返します。UInt64

基本的な使い方

CREATE TABLE example_data
(
    id UInt32,
    category String
)
ENGINE = Memory;

INSERT INTO example_data VALUES
(1, 'A'), (2, 'B'), (3, 'A'), (4, 'C'), (5, 'B'), (6, 'A');

SELECT uniqExact(category) as exact_unique_categories
FROM example_data;
┌─exact_unique_categories─┐
│                       3 │
└─────────────────────────┘

複数の引数

SELECT uniqExact(id, category) as exact_unique_combinations
FROM example_data;
┌─exact_unique_combinations─┐
│                         6 │
└───────────────────────────┘

関連項目