Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Fonctions uniqTheta

Les fonctions uniqTheta s’appliquent à deux objets uniqThetaSketch afin d’effectuer des calculs d’opérations ensemblistes, tels que ∪ / ∩ / × (union/intersect/not), et renvoient un nouvel objet uniqThetaSketch contenant le résultat.

Un objet uniqThetaSketch est construit par la fonction d’agrégation uniqTheta avec -State.

UniqThetaSketch est une structure de données qui stocke un ensemble de valeurs approximatives. Pour plus d’informations, consultez : Theta Sketch Framework.

uniqThetaUnion

Deux objets uniqThetaSketch permettant d’effectuer un calcul d’union (opération ensembliste ∪), le résultat étant un nouvel objet uniqThetaSketch.

uniqThetaUnion(uniqThetaSketch,uniqThetaSketch)

Arguments

  • uniqThetaSketch – objet uniqThetaSketch.

Exemple

SELECT finalizeAggregation(uniqThetaUnion(a, b)) AS a_union_b, finalizeAggregation(a) AS a_cardinality, finalizeAggregation(b) AS b_cardinality
FROM
(SELECT arrayReduce('uniqThetaState',[1,2]) AS a, arrayReduce('uniqThetaState',[2,3,4]) AS b );
┌─a_union_b─┬─a_cardinality─┬─b_cardinality─┐
│         4 │             2 │             3 │
└───────────┴───────────────┴───────────────┘

uniqThetaIntersect

Prend deux objets uniqThetaSketch pour effectuer un calcul d’intersection (opération ensembliste ∩) ; le résultat est un nouvel objet uniqThetaSketch.

uniqThetaIntersect(uniqThetaSketch,uniqThetaSketch)

Arguments

  • uniqThetaSketch – objet uniqThetaSketch.

Exemple

SELECT finalizeAggregation(uniqThetaIntersect(a, b)) AS a_intersect_b, finalizeAggregation(a) AS a_cardinality, finalizeAggregation(b) AS b_cardinality
FROM
(SELECT arrayReduce('uniqThetaState',[1,2]) AS a, arrayReduce('uniqThetaState',[2,3,4]) AS b );
┌─a_intersect_b─┬─a_cardinality─┬─b_cardinality─┐
│             1 │             2 │             3 │
└───────────────┴───────────────┴───────────────┘

uniqThetaNot

Deux objets uniqThetaSketch permettent d’effectuer un calcul a_not_b (opération ensembliste ×) ; le résultat est un nouvel objet uniqThetaSketch.

uniqThetaNot(uniqThetaSketch,uniqThetaSketch)

Arguments

  • uniqThetaSketch – objet uniqThetaSketch.

Exemple

SELECT finalizeAggregation(uniqThetaNot(a, b)) AS a_not_b, finalizeAggregation(a) AS a_cardinality, finalizeAggregation(b) AS b_cardinality
FROM
(SELECT arrayReduce('uniqThetaState',[2,3,4]) AS a, arrayReduce('uniqThetaState',[1,2]) AS b );
┌─a_not_b─┬─a_cardinality─┬─b_cardinality─┐
│       2 │             3 │             2 │
└─────────┴───────────────┴───────────────┘

Voir aussi

Navigation