Passer au contenu principal
Analyse les données fournies en argument selon le format d’entrée spécifié. Si l’argument de structure n’est pas spécifié, il est extrait des données.

Syntaxe

format(format_name, [structure], data)

Arguments

  • format_name — Le format des données.
  • structure - Structure de la table. Optionnel. Format : ‘column1_name column1_type, column2_name column2_type, …’.
  • data — Littéral de type String ou expression constante renvoyant une chaîne contenant des données au format spécifié

Valeur de retour

Une table contenant les données analysées à partir de l’argument data, selon le format spécifié et la structure spécifiée ou extraite.

Exemples

Sans l’argument structure :
Query
SELECT * FROM format(JSONEachRow,
$$
{"a": "Hello", "b": 111}
{"a": "World", "b": 123}
{"a": "Hello", "b": 112}
{"a": "World", "b": 124}
$$)
Response
┌───b─┬─a─────┐
│ 111 │ Hello │
│ 123 │ World │
│ 112 │ Hello │
│ 124 │ World │
└─────┴───────┘
Query
DESC format(JSONEachRow,
$$
{"a": "Hello", "b": 111}
{"a": "World", "b": 123}
{"a": "Hello", "b": 112}
{"a": "World", "b": 124}
$$)
Response
┌─name─┬─type──────────────┬─default_type─┬─default_expression─┬─comment─┬─codec_expression─┬─ttl_expression─┐
│ b    │ Nullable(Float64) │              │                    │         │                  │                │
│ a    │ Nullable(String)  │              │                    │         │                  │                │
└──────┴───────────────────┴──────────────┴────────────────────┴─────────┴──────────────────┴────────────────┘
Avec l’argument structure :
Query
SELECT * FROM format(JSONEachRow, 'a String, b UInt32',
$$
{"a": "Hello", "b": 111}
{"a": "World", "b": 123}
{"a": "Hello", "b": 112}
{"a": "World", "b": 124}
$$)
Response
┌─a─────┬───b─┐
│ Hello │ 111 │
│ World │ 123 │
│ Hello │ 112 │
│ World │ 124 │
└───────┴─────┘
Dernière modification le 25 juin 2026