Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

groupArrayInsertAt

groupArrayInsertAt

أُضيفت في: v1.1.0

تُدرِج قيمة في المصفوفة عند الموضع المحدد.

إذا أُدرِجت عدة قيم في الموضع نفسه ضمن استعلام واحد، فتتصرف الدالة على النحو التالي:

  • إذا نُفِّذ الاستعلام في خيط تنفيذ واحد، فستُستخدم أول قيمة من القيم المُدرَجة.
  • إذا نُفِّذ الاستعلام باستخدام عدة خيوط تنفيذ، فستكون القيمة الناتجة إحدى القيم المُدرَجة بشكل غير محدد.

الصياغة

groupArrayInsertAt(default_x, size)([x, pos])

المعلمات

  • default_x — اختياري. القيمة الافتراضية المستخدمة للاستبدال في المواضع الفارغة. Any
  • size — اختياري. طول المصفوفة الناتجة. عند استخدام هذه المعلمة، يجب تحديد القيمة الافتراضية default_x. UInt32

الوسائط

  • x — القيمة المراد إدراجها. Any
  • pos — الموضع الذي سيُدرج فيه العنصر المحدد x. يبدأ ترقيم الفهارس في المصفوفة من الصفر. UInt32

القيمة المُعادة

تعيد مصفوفة تحتوي على القيم المُدرَجة. Array

أمثلة

الاستخدام الأساسي من دون معلمات

SELECT groupArrayInsertAt(toString(number), number * 2) FROM numbers(5);
┌─groupArrayInsertAt(toString(number), multiply(number, 2))─┐
│ ['0','','1','','2','','3','','4']                         │
└───────────────────────────────────────────────────────────┘

الاستخدام مع معلمة القيمة الافتراضية

SELECT groupArrayInsertAt('-')(toString(number), number * 2) FROM numbers(5);
┌─groupArrayInsertAt('-')(toString(number), multiply(number, 2))─┐
│ ['0','-','1','-','2','-','3','-','4']                          │
└────────────────────────────────────────────────────────────────┘

الاستخدام مع معامِلَي القيمة الافتراضية والحجم

SELECT groupArrayInsertAt('-', 5)(toString(number), number * 2) FROM numbers(5);
┌─groupArrayInsertAt('-', 5)(toString(number), multiply(number, 2))─┐
│ ['0','-','1','-','2']                                             │
└───────────────────────────────────────────────────────────────────┘

الإدراج متعدد الخيوط في نفس الموضع

SELECT groupArrayInsertAt(number, 0) FROM numbers_mt(10) SETTINGS max_block_size = 1;
┌─groupArrayInsertAt(number, 0)─┐
│ [0]                           │
└───────────────────────────────┘
Navigation