跳到主要内容
跳到主要内容

JSON 的格式设置

本页列出了所有 JSON 格式通用的格式设置。

设置说明默认注意
input_format_import_nested_json将嵌套 JSON 数据映射为嵌套表(适用于 JSONEachRow 格式)。false
input_format_json_read_bools_as_numbers允许在 JSON 输入格式中将布尔类型解析为数值。true
input_format_json_read_bools_as_strings允许在 JSON 输入格式中将布尔值按字符串进行解析。true
input_format_json_read_numbers_as_strings允许在 JSON 输入格式中将数字解析为字符串类型。true
input_format_json_read_arrays_as_strings允许在 JSON 输入格式中将 JSON 数组解析为字符串。true
input_format_json_read_objects_as_strings允许在 JSON 输入格式中将 JSON 对象解析为字符串。true
input_format_json_named_tuples_as_objects将命名元组类型的列解析为 JSON 对象。true
input_format_json_try_infer_numbers_from_strings在推断模式时,尝试将字符串字段解析为数值。false
input_format_json_try_infer_named_tuples_from_objects在模式推断时,尝试从 JSON 对象推断命名元组类型。true
input_format_json_infer_incomplete_types_as_strings在对 JSON 输入格式进行模式推断时,应对值仅为 Null 或空对象/数组的键使用 String 类型。true
input_format_json_defaults_for_missing_elements_in_named_tuple在解析命名元组(named tuple)的 JSON 对象时,为缺失的字段插入默认值。true
input_format_json_ignore_unknown_keys_in_named_tuple对命名元组的 JSON 对象忽略未知键。false
input_format_json_compact_allow_variable_number_of_columns允许在 JSONCompact/JSONCompactEachRow 格式中使用可变数量的列,忽略多余的列,并对缺失的列使用默认值。false
input_format_json_throw_on_bad_escape_sequence启用时,如果 JSON 字符串包含错误的转义序列,将抛出异常。禁用时,错误的转义序列将在数据中原样保留。true
input_format_json_empty_as_default将 JSON 输入中的空字段按默认值处理。false对于复杂的默认表达式,还必须启用 input_format_defaults_for_omitted_fields
output_format_json_quote_64bit_integers控制在 JSON 输出格式中对 64 位整数是否加引号。true
output_format_json_quote_64bit_floats控制在 JSON 输出格式中对 64 位浮点数加引号的方式。false
output_format_json_quote_denormals在 JSON 输出格式中启用 '+nan'、'-nan'、'+inf'、'-inf' 的输出。false
output_format_json_quote_decimals控制在 JSON 输出格式中是否为小数加引号。false
output_format_json_escape_forward_slashes控制在 JSON 输出格式中是否对字符串中的正斜杠进行转义。true
output_format_json_named_tuples_as_objects将命名元组列序列化为 JSON 对象。true
output_format_json_array_of_rows以 JSONEachRow(Compact) 格式输出由所有行组成的 JSON 数组。false
output_format_json_validate_utf8启用对 JSON 输出格式中 UTF-8 序列的校验false请注意,这不会影响 JSON/JSONCompact/JSONColumnsWithMetadata 格式,它们始终会验证 UTF-8 编码。