الانتقال إلى المحتوى الرئيسي
تعمل دوال uniqTheta على كائنَي uniqThetaSketch لإجراء حسابات عمليات المجموعات مثل ∪ / ∩ / × ‏(union/intersect/not)، وتُرجِع كائن uniqThetaSketch جديدًا يحتوي على النتيجة. يُنشأ كائن uniqThetaSketch باستخدام دالة التجميع uniqTheta مع ‎-State. ‏UniqThetaSketch عبارة عن بنية بيانات لتخزين مجموعة من القيم التقريبية. لمزيد من المعلومات، راجع: Theta Sketch Framework.

uniqThetaUnion

كائنان من نوع uniqThetaSketch لإجراء عملية union (عملية على المجموعات ∪)، وتكون النتيجة كائنًا جديدًا من نوع uniqThetaSketch.
uniqThetaUnion(uniqThetaSketch,uniqThetaSketch)
المعاملات
  • uniqThetaSketch – كائن من نوع uniqThetaSketch.
مثال
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

كائنان من نوع uniqThetaSketch لحساب التقاطع (عملية على المجموعات ∩)، والنتيجة كائن uniqThetaSketch جديد.
uniqThetaIntersect(uniqThetaSketch,uniqThetaSketch)
الوسائط
  • uniqThetaSketch – كائن uniqThetaSketch.
مثال
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

عنصرا uniqThetaSketch لإجراء عملية حساب a_not_b (عملية على المجموعات ×)، وتكون النتيجة uniqThetaSketch جديدًا.
uniqThetaNot(uniqThetaSketch,uniqThetaSketch)
الوسائط
  • uniqThetaSketch – كائن uniqThetaSketch.
مثال
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 │
└─────────┴───────────────┴───────────────┘
انظر أيضًا
آخر تعديل في ٢٩ يونيو ٢٠٢٦