ينسّق الصفوف في كل مجموعة باستخدام تنسيق الإخراج ويعيد البيانات المنسّقة كسلسلة نصية. يشبه هذا formatRow، لكنه يعمل على المجموعة بأكملها ويمكنه استخدام التنسيقات المعتمدة على الكتل.
الصيغة
groupFormat(format)(x, y, ...)المعاملات
format— اسم تنسيق الإخراج، مثلJSONEachRowوCSVوTabSeparated.
الوسيطات
x, y, ...— تعبيرات تُنسَّق على شكل صفوف. يجب توفير وسيط واحد على الأقل.
القيمة المعادة
- String تحتوي على المخرجات المنسّقة للمجموعة.
التعامل مع NULL
مثل groupArray وgroupConcat، تتخطّى groupFormat الصف إذا كانت أيّ من وسائطها هي NULL؛ ولا تظهر هذه الصفوف في المخرجات المنسّقة. وعندما تكون إحدى الوسائط من النوع Nullable، يكون نوع النتيجة هو Nullable(String)، كما أن المجموعة التي يتم تخطّي جميع صفوفها — وكذلك وسيطة NULL غير محددة النوع بوصفها قيمة حرفية من النوع Nullable(Nothing) — تُرجِع القيمة NULL عبر المُركِّب العام Null.
SELECT groupFormat('JSONEachRow')(if(number = 0, NULL, number))
FROM numbers(3);
-- {"c1":1}
-- {"c1":2}أمثلة
الاستخدام الأساسي لـ JSONEachRow
SELECT groupFormat('JSONEachRow')(number, toString(number))
FROM numbers(3);النتيجة:
{"c1":0,"c2":"0"}
{"c1":1,"c2":"1"}
{"c1":2,"c2":"2"}groupFormat
أُضيف في: v
يُنسّق الصفوف في كل مجموعة باستخدام تنسيق الإخراج المحدد ويُرجع النتيجة كسلسلة نصية.
يُمرَّر اسم تنسيق الإخراج كمعلمة، بينما تكون الوسيطات هي الأعمدة المطلوب تنسيقها. تُنشأ أسماء الأعمدة على هيئة c1 وc2 و… في المخرجات المنسّقة.
الصيغة
groupFormat(format)(x, y, ...)المعاملات
format— اسم تنسيق الإخراج. على سبيل المثال: JSONEachRow وCSV وTabSeparated.String
الوسيطات
x, y, ...— تعبيرات لتنسيقها على شكل صفوف.Any
القيمة المُعادة
الناتج المنسّق للمجموعة. String
أمثلة
الاستخدام الأساسي
SELECT groupFormat('JSONEachRow')(number, toString(number))
FROM numbers(3){"c1":0,"c2":"0"}\n{"c1":1,"c2":"1"}\n{"c1":2,"c2":"2"}\n