قُدِّمت في: v20.3.0
ينشئ مصفوفة من قيم الوسيطات المأخوذة كعينة.
يُقتصر حجم المصفوفة الناتجة على max_size عنصرًا.
تُختار قيم الوسيطات وتُضاف إلى المصفوفة عشوائيًا.
الصيغة
groupArraySample(max_size[, seed])(x)
المعاملات
max_size — الحد الأقصى لحجم المصفوفة الناتجة. UInt64
seed — اختياري. قيمة البذرة لمولّد الأرقام العشوائية. القيمة الافتراضية: 123456. UInt64
x — وسيطة (اسم العمود أو تعبير). Any
الوسائط
array_column — عمود يحتوي على مصفوفات ليتم تجميعها. Array
القيمة المُعادة
مصفوفة من قيم x المختارة عشوائيًا. Array(T)
أمثلة
مثال على الاستخدام
CREATE TABLE default.colors (
id Int32,
color String
) ENGINE = Memory;
INSERT INTO default.colors VALUES
(1, 'red'),
(2, 'blue'),
(3, 'green'),
(4, 'white'),
(5, 'orange');
SELECT groupArraySample(3)(color) as newcolors FROM default.colors;
┌─newcolors──────────────────┐
│ ['white','blue','green'] │
└────────────────────────────┘
مثال باستخدام قيمة seed
-- Query with column name and different seed
SELECT groupArraySample(3, 987654321)(color) as newcolors FROM default.colors;
┌─newcolors──────────────────┐
│ ['red','orange','green'] │
└────────────────────────────┘
استخدام تعبير بوصفه وسيطة
-- Query with expression as argument
SELECT groupArraySample(3)(concat('light-', color)) as newcolors FROM default.colors;
┌─newcolors───────────────────────────────────┐
│ ['light-blue','light-orange','light-green'] │
└─────────────────────────────────────────────┘
آخر تعديل في ٢٥ يونيو ٢٠٢٦