Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

groupFormat

Formatea las filas de cada grupo mediante un formato de salida y devuelve los datos formateados como una cadena. Es similar a formatRow, pero funciona con el grupo completo y puede usar formatos basados en bloques.

Sintaxis

groupFormat(format)(x, y, ...)

Parámetros

  • format — Nombre del formato de salida, por ejemplo, JSONEachRow, CSV, TabSeparated.

Argumentos

  • x, y, ... — Expresiones que se formatean como filas. Se requiere al menos un argumento.

Valor devuelto

  • Un String que contiene la salida con formato del grupo.

Manejo de NULL

Al igual que groupArray y groupConcat, groupFormat omite una fila cuando cualquiera de sus argumentos es NULL; esas filas no aparecen en la salida con formato. Cuando un argumento es Nullable, el tipo de resultado es Nullable(String), y un grupo en el que se omiten todas las filas — así como un argumento NULL literal sin tipo, de tipo Nullable(Nothing) — devuelve NULL mediante el combinador genérico Null.

SELECT groupFormat('JSONEachRow')(if(number = 0, NULL, number))
FROM numbers(3);
-- {"c1":1}
-- {"c1":2}

Ejemplos

Uso básico con JSONEachRow

SELECT groupFormat('JSONEachRow')(number, toString(number))
FROM numbers(3);

Resultado:

{"c1":0,"c2":"0"}
{"c1":1,"c2":"1"}
{"c1":2,"c2":"2"}

groupFormat

Introducido en: v

Da formato a las filas de cada grupo con el formato de salida especificado y devuelve el resultado como una cadena.

El nombre del formato se pasa como parámetro, y los argumentos son las columnas a las que se aplicará el formato. Los nombres de las columnas se generan como c1, c2, … en la salida con formato.

Sintaxis

groupFormat(format)(x, y, ...)

Parámetros

  • format — Nombre del formato de salida. Por ejemplo, JSONEachRow, CSV, TabSeparated. String

Argumentos

  • x, y, ... — Expresiones que se formatearán como filas. Any

Valor devuelto

Salida con formato para el grupo. String

Ejemplos

Uso básico

SELECT groupFormat('JSONEachRow')(number, toString(number))
FROM numbers(3)
{"c1":0,"c2":"0"}\n{"c1":1,"c2":"1"}\n{"c1":2,"c2":"2"}\n
Navigation