Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

groupFormat

Met en forme les lignes de chaque groupe à l’aide d’un format de sortie et renvoie les données mises en forme sous forme de chaîne de caractères. Cette fonction est similaire à formatRow, mais elle s’applique à l’ensemble du groupe et peut utiliser des formats basés sur des blocs.

Syntaxe

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

Paramètres

  • format — Nom du format de sortie, par exemple JSONEachRow, CSV, TabSeparated.

Arguments

  • x, y, ... — Expressions à formater sous forme de lignes. Au moins un argument est requis.

Valeur renvoyée

  • Une String contenant la sortie formatée du groupe.

Gestion de NULL

Comme groupArray et groupConcat, groupFormat ignore une ligne dès que l'un de ses arguments vaut NULL ; ces lignes n'apparaissent pas dans la sortie formatée. Lorsqu'un argument est nullable, le type de résultat est Nullable(String), et un groupe dont toutes les lignes sont ignorées — ainsi qu'un argument NULL littéral non typé de type Nullable(Nothing) — renvoie NULL via le combinateur générique Null.

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

Exemples

Utilisation de base avec JSONEachRow

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

Résultat :

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

groupFormat

Introduit dans : v

Formate les lignes de chaque groupe à l’aide du format de sortie spécifié et renvoie le résultat sous forme de chaîne de caractères.

Le nom du format est passé en paramètre, et les arguments correspondent aux colonnes à formater. Les noms de colonnes sont générés sous la forme c1, c2, … dans la sortie formatée.

Syntaxe

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

Paramètres

  • format — Nom du format de sortie. Par exemple, JSONEachRow, CSV, TabSeparated. String

Arguments

  • x, y, ... — Expressions à formater sous forme de lignes. Any

Valeur renvoyée

Résultat formaté pour le groupe. String

Exemples

Utilisation de base

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