> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# input_format_* 포맷 설정

> input_format_*로 생성된 그룹의 ClickHouse 포맷 설정입니다.

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>유형</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>기본값</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          재시작 없이 변경 가능
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

이 설정은 [소스](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/FormatFactorySettings.h)를 기반으로 자동 생성됩니다.

<div id="input_format_allow_errors_num">
  ## input\_format\_allow\_errors\_num
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

텍스트 형식(CSV, TSV 등)에서 읽을 때 허용되는 최대 오류 수를 설정합니다.

기본값은 0입니다.

항상 `input_format_allow_errors_ratio`와 함께 사용하십시오.

행을 읽는 동안 오류가 발생했더라도 오류 카운터가 아직 `input_format_allow_errors_num`보다 작으면 ClickHouse는 해당 행을 무시하고 다음 행으로 넘어갑니다.

`input_format_allow_errors_num`와 `input_format_allow_errors_ratio`를 모두 초과하면 ClickHouse는 예외를 발생시킵니다.

<div id="input_format_allow_errors_ratio">
  ## input\_format\_allow\_errors\_ratio
</div>

<SettingsInfoBlock type="Float" default_value="0" />

텍스트 형식(CSV, TSV 등)에서 데이터를 읽을 때 허용되는 최대 오류 비율을 설정합니다.
오류 비율은 0과 1 사이의 부동소수점 값으로 지정합니다.

기본값은 0입니다.

항상 `input_format_allow_errors_num`과 함께 사용하십시오.

행을 읽는 중 오류가 발생하더라도 오류 카운터가 아직 `input_format_allow_errors_ratio`보다 작으면 ClickHouse는 해당 행을 무시하고 다음 행을 계속 읽습니다.

`input_format_allow_errors_num`과 `input_format_allow_errors_ratio`를 모두 초과하면 ClickHouse는 예외를 발생시킵니다.

<div id="input_format_allow_seeks">
  ## input\_format\_allow\_seeks
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

ORC, Parquet, Arrow 입력 포맷을 읽는 동안 seek(또는 범위 읽기)를 허용합니다.
활성화되어 있고 소스가 이를 지원하면(예: 로컬 파일, S3, 범위 읽기를 지원하고 크기를 알 수 있는 HTTP),
ClickHouse는 필요한 바이트 범위만 읽어 메모리 사용량을 줄일 수 있습니다.
비활성화되어 있거나 소스가 seek를 지원하지 않으면(예: 파일 크기를 알 수 없거나 stream이 seek 불가능한 경우),
일부 reader는 전체 파일을 메모리에 로드하는 방식으로 폴백될 수 있습니다.
기본적으로 활성화되어 있습니다.

<div id="input_format_arrow_allow_missing_columns">
  ## input\_format\_arrow\_allow\_missing\_columns
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.12"},{"label": "1"},{"label": "기본적으로 Arrow 파일에서 누락된 컬럼을 허용합니다"}]}]} />

Arrow 입력 형식을 읽을 때 누락된 컬럼을 허용합니다

<div id="input_format_arrow_case_insensitive_column_matching">
  ## input\_format\_arrow\_case\_insensitive\_column\_matching
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

Arrow 컬럼과 CH 컬럼을 매칭할 때 대소문자를 구분하지 않습니다.

<div id="input_format_arrow_skip_columns_with_unsupported_types_in_schema_inference">
  ## input\_format\_arrow\_skip\_columns\_with\_unsupported\_types\_in\_schema\_inference
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

Arrow 포맷의 스키마 추론 시 지원되지 않는 타입의 컬럼을 건너뜁니다

<div id="input_format_arrow_use_native_reader">
  ## input\_format\_arrow\_use\_native\_reader
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "1"},{"label": "Apache Arrow 라이브러리 기반 reader 대신 Arrow 및 ArrowStream 포맷에 ClickHouse 네이티브 reader를 사용하기 위한 새로운 설정입니다."}]}]} />

Apache Arrow 라이브러리 기반 reader 대신 Arrow 및 ArrowStream 포맷에 ClickHouse 네이티브 reader를 사용합니다.

<div id="input_format_avro_allow_missing_fields">
  ## input\_format\_avro\_allow\_missing\_fields
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

Avro/AvroConfluent 포맷에서 스키마에 필드가 없으면 오류 대신 기본값을 사용합니다

<div id="input_format_avro_null_as_default">
  ## input\_format\_avro\_null\_as\_default
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

Avro/AvroConfluent 포맷에서는 값이 null이고 열이 널 허용이 아닌 경우 기본값을 삽입합니다

<div id="input_format_binary_decode_types_in_binary_format">
  ## input\_format\_binary\_decode\_types\_in\_binary\_format
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.7"},{"label": "0"},{"label": "RowBinaryWithNamesAndTypes 입력 형식에서 타입 이름 대신 데이터 타입을 바이너리 형식으로 읽을 수 있도록 하는 새로운 설정이 추가되었습니다"}]}]} />

RowBinaryWithNamesAndTypes 입력 형식에서 타입 이름 대신 데이터 타입을 바이너리 형식으로 읽습니다

<div id="input_format_binary_max_type_complexity">
  ## input\_format\_binary\_max\_type\_complexity
</div>

<SettingsInfoBlock type="UInt64" default_value="1000" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.1"},{"label": "1000"},{"label": "악의적인 입력을 방지하기 위해 binary 타입 디코딩 시 타입 노드의 최대 개수를 제어하는 새로운 설정을 추가했습니다."}]}]} />

binary 타입을 디코딩할 때 허용되는 최대 타입 노드 수입니다(깊이가 아니라 전체 개수 기준). `Map(String, UInt32)`는 3개의 노드입니다. 악의적인 입력을 방지합니다. 0은 무제한입니다.

<div id="input_format_binary_read_json_as_string">
  ## input\_format\_binary\_read\_json\_as\_string
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.10"},{"label": "0"},{"label": "RowBinary 입력 형식에서 JSON 타입 값을 JSON 문자열로 읽는 새로운 설정 추가"}]}]} />

RowBinary 입력 형식에서 [JSON](/docs/ko/reference/data-types/newjson) 데이터 타입 값을 JSON [String](/docs/ko/reference/data-types/string) 값으로 읽습니다.

<div id="input_format_bson_skip_fields_with_unsupported_types_in_schema_inference">
  ## input\_format\_bson\_skip\_fields\_with\_unsupported\_types\_in\_schema\_inference
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

BSON 포맷의 스키마 추론 시 지원되지 않는 타입의 필드를 건너뜁니다.

<div id="input_format_capn_proto_skip_fields_with_unsupported_types_in_schema_inference">
  ## input\_format\_capn\_proto\_skip\_fields\_with\_unsupported\_types\_in\_schema\_inference
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

CapnProto 포맷의 스키마 추론 시 지원되지 않는 타입의 컬럼을 건너뜁니다

<div id="input_format_column_name_matching_mode">
  ## input\_format\_column\_name\_matching\_mode
</div>

<SettingsInfoBlock type="InputFormatColumnMatchingCaseSensitivity" default_value="auto" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.5"},{"label": "auto"},{"label": "정확한 대소문자 일치를 요구하는 대신, 입력 컬럼명을 먼저 대소문자를 구분해 일치시키고, 실패하면 대소문자를 구분하지 않는 일치 방식으로 폴백됩니다."}]}, {"id": "row-2","items": [{"label": "26.4"},{"label": "match_case"},{"label": "새 설정입니다."}]}]} />

다양한 포맷(JSONEachRow, CSVWithNames, JSONColumns, BSONEachRow, RowBinaryWithNames 등을 포함하되 이에 국한되지 않음)으로 데이터를 가져올 때 컬럼명 일치 모드를 정의합니다.
지원되는 모드:

* match\_case: 대소문자를 구분하여 일치
  * ignore\_case: 대소문자를 구분하지 않고 일치
  * auto: 먼저 대소문자를 구분하여 일치를 시도하고, 실패하면 대소문자를 구분하지 않고 일치를 시도합니다.

<div id="input_format_connection_handling">
  ## input\_format\_connection\_handling
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.2"},{"label": "0"},{"label": "연결이 예기치 않게 종료될 경우 버퍼에 남아 있는 데이터를 파싱하고 처리할 수 있도록 하는 새로운 설정"}]}]} />

이 옵션을 활성화하면 연결이 예기치 않게 종료되더라도 버퍼에 남아 있는 데이터는 오류로 처리되지 않고 파싱 및 처리됩니다

<Note>
  이 옵션을 활성화하면 병렬 파싱이 비활성화되며 중복 제거를 사용할 수 없게 됩니다
</Note>

<div id="input_format_csv_allow_cr_end_of_line">
  ## input\_format\_csv\_allow\_cr\_end\_of\_line
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

true로 설정하면 뒤에 \가 오지 않는 줄 끝의 \r을 허용합니다.

<div id="input_format_csv_allow_variable_number_of_columns">
  ## input\_format\_csv\_allow\_variable\_number\_of\_columns
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

CSV 입력에 추가 컬럼이 있으면(파일에 예상보다 많은 컬럼이 있는 경우) 이를 무시하고, CSV 입력에서 누락된 필드는 기본값으로 처리합니다.

<div id="input_format_csv_allow_whitespace_or_tab_as_delimiter">
  ## input\_format\_csv\_allow\_whitespace\_or\_tab\_as\_delimiter
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

CSV 문자열에서 공백과 탭(\t)을 필드 구분 기호로 사용할 수 있게 합니다

<div id="input_format_csv_arrays_as_nested_csv">
  ## input\_format\_csv\_arrays\_as\_nested\_csv
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

CSV에서 배열을 읽을 때는 해당 원소가 중첩 CSV로 직렬화된 후 문자열에 저장된 것으로 간주합니다. 예시: "\[""Hello"", ""world"", ""42"""" TV""]". 배열을 감싸는 대괄호는 생략할 수 있습니다.

<div id="input_format_csv_deserialize_separate_columns_into_tuple">
  ## input\_format\_csv\_deserialize\_separate\_columns\_into\_tuple
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "1"},{"label": "CSV 형식의 튜플을 해석하는 새로운 방식이 추가되었습니다."}]}, {"id": "row-2","items": [{"label": "24.3"},{"label": "1"},{"label": "CSV 형식의 튜플을 해석하는 새로운 방식이 추가되었습니다."}]}]} />

true로 설정하면 CSV 형식으로 기록된 개별 컬럼을 Tuple 컬럼으로 역직렬화할 수 있습니다.

<div id="input_format_csv_detect_header">
  ## input\_format\_csv\_detect\_header
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.1"},{"label": "1"},{"label": "기본적으로 CSV 형식의 헤더를 감지합니다"}]}]} />

CSV 형식에서 이름과 타입이 있는 헤더를 자동으로 감지합니다

<div id="input_format_csv_empty_as_default">
  ## input\_format\_csv\_empty\_as\_default
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

CSV 입력에서 빈 필드를 기본값으로 처리합니다.

<div id="input_format_csv_enum_as_number">
  ## input\_format\_csv\_enum\_as\_number
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

CSV 형식에서는 삽입되는 enum 값을 enum 인덱스로 처리합니다

<div id="input_format_csv_missing_nullable_as_empty_string">
  ## input\_format\_csv\_missing\_nullable\_as\_empty\_string
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "0"},{"label": "CSV에서 `Nullable(String)`의 누락된 값을 NULL 대신 빈 문자열로 읽도록 하는 새로운 설정입니다."}]}]} />

CSV에서 누락된 값을 `Nullable(String)`으로 읽는 방식을 제어합니다. 누락된 값은 따옴표로 둘러싸이지 않은 상태에서 쉼표 사이, 앞 또는 뒤에 있는 빈 공간을 의미합니다. 이 설정을 활성화하면 `input_format_csv_empty_as_default` 값과 관계없이 `Nullable(String)`의 누락된 값은 NULL이 아니라 빈 `String`으로 해석됩니다.

<div id="input_format_csv_skip_first_lines">
  ## input\_format\_csv\_skip\_first\_lines
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

CSV 형식 데이터의 시작 부분에서 지정한 줄 수만큼 건너뜁니다

<div id="input_format_csv_skip_trailing_empty_lines">
  ## input\_format\_csv\_skip\_trailing\_empty\_lines
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

CSV 형식에서 끝부분의 빈 줄을 건너뜁니다

<div id="input_format_csv_trim_whitespaces">
  ## input\_format\_csv\_trim\_whitespaces
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

CSV 문자열의 앞뒤에 있는 공백과 탭(\t) 문자를 제거합니다

<div id="input_format_csv_try_infer_numbers_from_strings">
  ## input\_format\_csv\_try\_infer\_numbers\_from\_strings
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

활성화하면 스키마 추론 중에 ClickHouse가 문자열 필드에서 숫자를 추론하려고 시도합니다.
CSV 데이터에 따옴표로 묶인 UInt64 숫자가 포함된 경우 유용할 수 있습니다.

기본적으로 비활성화되어 있습니다.

<div id="input_format_csv_try_infer_strings_from_quoted_tuples">
  ## input\_format\_csv\_try\_infer\_strings\_from\_quoted\_tuples
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "1"},{"label": "CSV 형식에서 튜플을 해석하는 새로운 방식이 새로 추가되었습니다."}]}, {"id": "row-2","items": [{"label": "24.3"},{"label": "1"},{"label": "CSV 형식에서 튜플을 해석하는 새로운 방식이 새로 추가되었습니다."}]}]} />

입력 데이터에서 따옴표로 묶인 튜플을 String 타입의 값으로 해석합니다.

<div id="input_format_csv_use_best_effort_in_schema_inference">
  ## input\_format\_csv\_use\_best\_effort\_in\_schema\_inference
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

CSV 형식에서 스키마를 추론할 때 일부 조정과 휴리스틱을 사용합니다

<div id="input_format_csv_use_default_on_bad_values">
  ## input\_format\_csv\_use\_default\_on\_bad\_values
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

잘못된 값으로 인해 CSV 필드 역직렬화에 실패한 경우 컬럼에 기본값을 설정할 수 있습니다.

<div id="input_format_custom_allow_variable_number_of_columns">
  ## input\_format\_custom\_allow\_variable\_number\_of\_columns
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

CustomSeparated 입력에서 파일에 예상보다 많은 컬럼이 있으면 추가 컬럼을 무시하고, 누락된 필드는 기본값으로 처리합니다

<div id="input_format_custom_detect_header">
  ## input\_format\_custom\_detect\_header
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.1"},{"label": "1"},{"label": "기본적으로 CustomSeparated format에서 이름과 타입이 포함된 헤더를 감지합니다"}]}]} />

CustomSeparated format에서 이름과 타입이 포함된 헤더를 자동으로 감지합니다

<div id="input_format_custom_skip_trailing_empty_lines">
  ## input\_format\_custom\_skip\_trailing\_empty\_lines
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

CustomSeparated 포맷의 끝에 있는 빈 줄을 건너뜁니다

<div id="input_format_defaults_for_omitted_fields">
  ## input\_format\_defaults\_for\_omitted\_fields
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "19.12"},{"label": "1"},{"label": "일부 입력 형식에서 생략된 필드에 대해 복잡한 기본 표현식을 계산하도록 활성화합니다. 이는 예상되는 동작이기 때문입니다"}]}]} />

`INSERT` 쿼리를 수행할 때 생략된 입력 컬럼 값을 해당 컬럼의 기본값으로 대체합니다. 이 옵션은 [JSONEachRow](/docs/ko/reference/formats/JSON/JSONEachRow)(및 기타 JSON 포맷), [CSV](/docs/ko/reference/formats/CSV/CSV), [TabSeparated](/docs/ko/reference/formats/TabSeparated/TabSeparated), [TSKV](/docs/ko/reference/formats/TabSeparated/TSKV), [Parquet](/docs/ko/reference/formats/Parquet/Parquet), [Arrow](/docs/ko/reference/formats/Arrow/Arrow), [Avro](/docs/ko/reference/formats/Avro/Avro), [ORC](/docs/ko/reference/formats/ORC), [Native](/docs/ko/reference/formats/Native) 포맷과 `WithNames`/`WithNamesAndTypes` 접미사가 있는 포맷에 적용됩니다.

<Note>
  이 옵션을 활성화하면 확장된 테이블 메타데이터가 서버에서 클라이언트로 전송됩니다. 이로 인해 서버에서 추가 컴퓨팅 리소스가 사용되며 성능이 저하될 수 있습니다.
</Note>

가능한 값:

* 0 — 비활성화됨.
* 1 — 활성화됨.

<div id="input_format_force_null_for_omitted_fields">
  ## input\_format\_force\_null\_for\_omitted\_fields
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.5"},{"label": "0"},{"label": "필요한 경우 누락된 필드에 타입 기본값을 적용하지 않음"}]}]} />

누락된 필드를 NULL 값으로 강제 초기화

<div id="input_format_geojson_unsupported_geometry_handling">
  ## input\_format\_geojson\_unsupported\_geometry\_handling
</div>

<SettingsInfoBlock type="GeoJSONUnsupportedGeometryHandling" default_value="throw" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.6"},{"label": "throw"},{"label": "Geometry 타입으로 표현할 수 없는 GeoJSON geometry 타입(GeometryCollection, MultiPoint)의 처리 방식을 제어하는 새로운 설정"}]}]} />

`GeoJSON` 입력을 읽는 동안 ClickHouse의 `Geometry` 타입으로 표현할 수 없는 유효한 `GeoJSON` geometry 타입(`GeometryCollection` 또는 `MultiPoint` 등)을 `geometry` 컬럼에 저장해야 하는 경우의 처리 방식을 제어합니다.

가능한 값:

* `'throw'` (기본값) — 예외를 발생시킵니다.
* `'null'` — `geometry` 컬럼에 `NULL` 값을 삽입하고 파싱을 계속합니다.

이 설정은 `geometry` 컬럼이 구체화된 경우에만 적용됩니다. 해당 컬럼이 요청된 출력 컬럼이 아닌 경우에는 이러한 geometry의 형식 유효성만 검증하며, 이 처리 방식은 적용되지 않습니다.

<div id="input_format_hive_text_allow_variable_number_of_columns">
  ## input\_format\_hive\_text\_allow\_variable\_number\_of\_columns
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.4"},{"label": "1"},{"label": "Hive Text 입력에서 추가 컬럼(파일에 예상보다 많은 컬럼이 있는 경우)은 무시하고, 누락된 필드는 기본값으로 처리합니다."}]}]} />

Hive Text 입력에서 추가 컬럼(파일에 예상보다 많은 컬럼이 있는 경우)은 무시하고, 누락된 필드는 기본값으로 처리합니다.

<div id="input_format_hive_text_collection_items_delimiter">
  ## input\_format\_hive\_text\_collection\_items\_delimiter
</div>

<SettingsInfoBlock type="Char" default_value="" />

Hive Text File에서 컬렉션(배열 또는 맵) 항목 사이를 구분하는 문자

<div id="input_format_hive_text_fields_delimiter">
  ## input\_format\_hive\_text\_fields\_delimiter
</div>

<SettingsInfoBlock type="Char" default_value="" />

Hive Text File의 필드 구분자

<div id="input_format_hive_text_map_keys_delimiter">
  ## input\_format\_hive\_text\_map\_keys\_delimiter
</div>

<SettingsInfoBlock type="Char" default_value="" />

Hive Text File에서 맵 키/값 쌍을 구분하는 구분자

<div id="input_format_import_nested_json">
  ## input\_format\_import\_nested\_json
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

중첩 객체를 포함한 JSON 데이터의 삽입을 활성화하거나 비활성화합니다.

지원되는 포맷:

* [JSONEachRow](/docs/ko/reference/formats/JSON/JSONEachRow)

가능한 값:

* 0 — 비활성화됨.
* 1 — 활성화됨.

관련 항목:

* `JSONEachRow` 포맷의 [중첩 구조 사용](/docs/ko/guides/clickhouse/data-formats/json/formats#accessing-nested-json-objects).

<div id="input_format_ipv4_default_on_conversion_error">
  ## input\_format\_ipv4\_default\_on\_conversion\_error
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

IPv4를 역직렬화할 때 변환 오류가 발생하면 예외를 발생시키는 대신 기본값을 사용합니다.

기본적으로 비활성화되어 있습니다.

<div id="input_format_ipv6_default_on_conversion_error">
  ## input\_format\_ipv6\_default\_on\_conversion\_error
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

IPV6 역직렬화 중 변환 오류가 발생하면 예외를 발생시키는 대신 기본값을 사용합니다.

기본적으로 비활성화되어 있습니다.

<div id="input_format_json_compact_allow_variable_number_of_columns">
  ## input\_format\_json\_compact\_allow\_variable\_number\_of\_columns
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

JSONCompact/JSONCompactEachRow 입력 포맷에서 행마다 컬럼 수가 달라도 허용합니다.
예상한 것보다 컬럼이 많은 행의 추가 컬럼은 무시하고, 누락된 컬럼은 기본값으로 처리합니다.

기본적으로 비활성화되어 있습니다.

<div id="input_format_json_defaults_for_missing_elements_in_named_tuple">
  ## input\_format\_json\_defaults\_for\_missing\_elements\_in\_named\_tuple
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.1"},{"label": "1"},{"label": "기본적으로 named tuple을 읽을 때 JSON 객체에서 누락된 원소를 허용합니다"}]}]} />

named tuple을 파싱할 때 JSON 객체에서 누락된 원소에 기본값을 삽입합니다.
이 설정은 `input_format_json_named_tuples_as_objects` 설정이 활성화된 경우에만 작동합니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_json_empty_as_default">
  ## input\_format\_json\_empty\_as\_default
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.9"},{"label": "0"},{"label": "JSON 입력에서 빈 필드를 기본값으로 처리할 수 있도록 새로운 설정이 추가되었습니다."}]}]} />

활성화하면 JSON 입력의 빈 필드를 기본값으로 대체합니다. 기본값 표현식이 복잡한 경우에는 `input_format_defaults_for_omitted_fields`도 함께 활성화해야 합니다.

가능한 값:

* 0 — 비활성화.
* 1 — 활성화.

<div id="input_format_json_ignore_unknown_keys_in_named_tuple">
  ## input\_format\_json\_ignore\_unknown\_keys\_in\_named\_tuple
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.3"},{"label": "1"},{"label": "JSON 객체를 이름이 지정된 Tuple로 파싱하는 기능 개선"}]}]} />

이름이 지정된 Tuple용 JSON 객체에서 알 수 없는 키를 무시합니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_json_ignore_unnecessary_fields">
  ## input\_format\_json\_ignore\_unnecessary\_fields
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.4"},{"label": "1"},{"label": "불필요한 필드는 무시하고 파싱하지 않습니다. 이 옵션을 활성화하면 형식이 잘못되었거나 중복된 필드가 있는 JSON 문자열에서 예외가 발생하지 않을 수 있습니다"}]}]} />

불필요한 필드는 무시하고 파싱하지 않습니다. 이 옵션을 활성화하면 형식이 잘못되었거나 중복된 필드가 있는 JSON 문자열에서 예외가 발생하지 않을 수 있습니다

<div id="input_format_json_infer_array_of_dynamic_from_array_of_different_types">
  ## input\_format\_json\_infer\_array\_of\_dynamic\_from\_array\_of\_different\_types
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "1"},{"label": "기본적으로 값의 데이터 타입이 서로 다른 JSON 배열에 대해 Array(Dynamic)을 추론합니다"}]}]} />

활성화하면 스키마 추론 시 ClickHouse는 값의 데이터 타입이 서로 다른 JSON 배열에 Array(Dynamic) 타입을 사용합니다.

예시:

```sql theme={null}
SET input_format_json_infer_array_of_dynamic_from_array_of_different_types=1;
DESC format(JSONEachRow, '{"a" : [42, "hello", [1, 2, 3]]}');
```

```response theme={null}
┌─name─┬─type───────────┐
│ a    │ Array(Dynamic) │
└──────┴────────────────┘
```

```sql theme={null}
SET input_format_json_infer_array_of_dynamic_from_array_of_different_types=0;
DESC format(JSONEachRow, '{"a" : [42, "hello", [1, 2, 3]]}');
```

```response theme={null}
┌─name─┬─type─────────────────────────────────────────────────────────────┐
│ a    │ Tuple(Nullable(Int64), Nullable(String), Array(Nullable(Int64))) │
└──────┴──────────────────────────────────────────────────────────────────┘
```

기본적으로 활성화되어 있습니다.

<div id="input_format_json_infer_incomplete_types_as_strings">
  ## input\_format\_json\_infer\_incomplete\_types\_as\_strings
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.9"},{"label": "1"},{"label": "기본적으로 JSON 포맷에서 불완전한 타입을 String으로 추론할 수 있도록 허용합니다"}]}]} />

스키마 추론 중 데이터 샘플에서 `Null`/`{}`/`[]`만 포함된 JSON 키에 대해 String 타입을 사용할 수 있도록 허용합니다.
JSON 포맷에서는 모든 값을 String으로 읽을 수 있으므로, 타입을 알 수 없는 키에 String 타입을 사용하면 스키마 추론 중 `Cannot determine type for column 'column_name' by first 25000 rows of data, most likely this column contains only Nulls or empty Arrays/Maps`와 같은 오류를 방지할 수 있습니다.

예시:

```sql theme={null}
SET input_format_json_infer_incomplete_types_as_strings = 1, input_format_json_try_infer_named_tuples_from_objects = 1;
DESCRIBE format(JSONEachRow, '{"obj" : {"a" : [1,2,3], "b" : "hello", "c" : null, "d" : {}, "e" : []}}');
SELECT * FROM format(JSONEachRow, '{"obj" : {"a" : [1,2,3], "b" : "hello", "c" : null, "d" : {}, "e" : []}}');
```

결과:

```
┌─name─┬─type───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬─default_type─┬─default_expression─┬─comment─┬─codec_expression─┬─ttl_expression─┐
│ obj  │ Tuple(a Array(Nullable(Int64)), b Nullable(String), c Nullable(String), d Nullable(String), e Array(Nullable(String))) │              │                    │         │                  │                │
└──────┴────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴──────────────┴────────────────────┴─────────┴──────────────────┴────────────────┘

┌─obj────────────────────────────┐
│ ([1,2,3],'hello',NULL,'{}',[]) │
└────────────────────────────────┘
```

기본적으로 활성화되어 있습니다.

<div id="input_format_json_map_as_array_of_tuples">
  ## input\_format\_json\_map\_as\_array\_of\_tuples
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.7"},{"label": "0"},{"label": "새로운 설정"}]}]} />

맵 컬럼을 튜플로 이루어진 JSON 배열로 역직렬화합니다.

기본적으로 비활성화되어 있습니다.

<div id="input_format_json_max_depth">
  ## input\_format\_json\_max\_depth
</div>

<SettingsInfoBlock type="UInt64" default_value="1000" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.8"},{"label": "1000"},{"label": "이전 버전에서는 제한이 없었지만, 이는 안전하지 않았습니다."}]}]} />

JSON 필드의 최대 깊이입니다. 이는 엄격한 제한이 아니므로 정확히 적용되지 않을 수 있습니다.

<div id="input_format_json_named_tuples_as_objects">
  ## input\_format\_json\_named\_tuples\_as\_objects
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

named tuple 컬럼을 JSON 객체로 해석합니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_json_read_arrays_as_strings">
  ## input\_format\_json\_read\_arrays\_as\_strings
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.9"},{"label": "1"},{"label": "기본적으로 JSON 포맷에서 JSON 배열을 문자열로 읽을 수 있도록 허용합니다"}]}]} />

JSON 입력 포맷에서 JSON 배열을 문자열로 파싱할 수 있도록 허용합니다.

예시:

```sql theme={null}
SET input_format_json_read_arrays_as_strings = 1;
SELECT arr, toTypeName(arr), JSONExtractArrayRaw(arr)[3] from format(JSONEachRow, 'arr String', '{"arr" : [1, "Hello", [1,2,3]]}');
```

결과:

```
┌─arr───────────────────┬─toTypeName(arr)─┬─arrayElement(JSONExtractArrayRaw(arr), 3)─┐
│ [1, "Hello", [1,2,3]] │ String          │ [1,2,3]                                   │
└───────────────────────┴─────────────────┴───────────────────────────────────────────┘
```

기본적으로 활성화되어 있습니다.

<div id="input_format_json_read_bools_as_numbers">
  ## input\_format\_json\_read\_bools\_as\_numbers
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

JSON 입력 형식에서 bool을 숫자로 파싱할 수 있습니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_json_read_bools_as_strings">
  ## input\_format\_json\_read\_bools\_as\_strings
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.1"},{"label": "1"},{"label": "기본적으로 JSON 포맷에서 불리언 값을 문자열로 읽을 수 있도록 허용합니다"}]}]} />

JSON 입력 포맷에서 불리언 값을 문자열로 파싱할 수 있도록 허용합니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_json_read_numbers_as_strings">
  ## input\_format\_json\_read\_numbers\_as\_strings
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.9"},{"label": "1"},{"label": "기본적으로 JSON 포맷에서 숫자를 문자열로 읽을 수 있도록 허용합니다"}]}]} />

JSON 입력 포맷에서 숫자를 문자열로 읽을 수 있도록 합니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_json_read_objects_as_strings">
  ## input\_format\_json\_read\_objects\_as\_strings
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.1"},{"label": "1"},{"label": "object type이 Experimental인 경우 중첩된 JSON 객체를 문자열로 읽을 수 있도록 합니다"}]}]} />

JSON 입력 형식에서 JSON 객체를 문자열로 파싱할 수 있도록 허용합니다.

예시:

```sql theme={null}
SET input_format_json_read_objects_as_strings = 1;
CREATE TABLE test (id UInt64, obj String, date Date) ENGINE=Memory();
INSERT INTO test FORMAT JSONEachRow {"id" : 1, "obj" : {"a" : 1, "b" : "Hello"}, "date" : "2020-01-01"};
SELECT * FROM test;
```

결과:

```
┌─id─┬─obj──────────────────────┬───────date─┐
│  1 │ {"a" : 1, "b" : "Hello"} │ 2020-01-01 │
└────┴──────────────────────────┴────────────┘
```

기본적으로 활성화되어 있습니다.

<div id="input_format_json_throw_on_bad_escape_sequence">
  ## input\_format\_json\_throw\_on\_bad\_escape\_sequence
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.4"},{"label": "1"},{"label": "잘못된 이스케이프 시퀀스가 포함된 JSON 문자열도 저장하도록 허용"}]}]} />

JSON 입력 포맷에서 JSON 문자열에 잘못된 이스케이프 시퀀스가 포함된 경우 예외를 발생시킵니다. 비활성화하면 잘못된 이스케이프 시퀀스는 데이터에 그대로 유지됩니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_json_try_infer_named_tuples_from_objects">
  ## input\_format\_json\_try\_infer\_named\_tuples\_from\_objects
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.9"},{"label": "1"},{"label": "기본적으로 JSON 객체에서 이름이 지정된 Tuple을 추론하도록 시도합니다"}]}]} />

활성화되면 스키마 추론 중에 ClickHouse가 JSON 객체에서 이름이 지정된 Tuple을 추론하려고 시도합니다.
그 결과 생성되는 이름이 지정된 Tuple에는 샘플 데이터의 해당 JSON 객체들에 포함된 모든 원소가 들어갑니다.

예시:

```sql theme={null}
SET input_format_json_try_infer_named_tuples_from_objects = 1;
DESC format(JSONEachRow, '{"obj" : {"a" : 42, "b" : "Hello"}}, {"obj" : {"a" : 43, "c" : [1, 2, 3]}}, {"obj" : {"d" : {"e" : 42}}}')
```

결과:

```
┌─name─┬─type───────────────────────────────────────────────────────────────────────────────────────────────┬─default_type─┬─default_expression─┬─comment─┬─codec_expression─┬─ttl_expression─┐
│ obj  │ Tuple(a Nullable(Int64), b Nullable(String), c Array(Nullable(Int64)), d Tuple(e Nullable(Int64))) │              │                    │         │                  │                │
└──────┴────────────────────────────────────────────────────────────────────────────────────────────────────┴──────────────┴────────────────────┴─────────┴──────────────────┴────────────────┘
```

기본적으로 활성화되어 있습니다.

<div id="input_format_json_try_infer_numbers_from_strings">
  ## input\_format\_json\_try\_infer\_numbers\_from\_strings
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.9"},{"label": "0"},{"label": "가능한 parsing 오류를 방지하기 위해 기본적으로 JSON 포맷에서는 문자열에서 숫자를 추론하지 않습니다"}]}]} />

활성화하면 스키마 추론 중에 ClickHouse가 문자열 필드의 값을 숫자로 추론합니다.
JSON 데이터에 따옴표로 묶인 UInt64 숫자가 포함된 경우 유용할 수 있습니다.

기본적으로 비활성화되어 있습니다.

<div id="input_format_json_use_string_type_for_ambiguous_paths_in_named_tuples_inference_from_objects">
  ## input\_format\_json\_use\_string\_type\_for\_ambiguous\_paths\_in\_named\_tuples\_inference\_from\_objects
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "0"},{"label": "JSON 객체에서 이름이 지정된 Tuple을 추론할 때 모호한 경로가 있으면 예외 대신 String type을 사용할 수 있습니다"}]}]} />

JSON 객체에서 이름이 지정된 Tuple을 추론할 때 경로가 모호하면 예외 대신 String type을 사용합니다

<div id="input_format_json_validate_types_from_metadata">
  ## input\_format\_json\_validate\_types\_from\_metadata
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

JSON/JSONCompact/JSONColumnsWithMetadata 입력 형식에서 이 설정이 1로 지정되면,
입력 데이터의 메타데이터에 있는 타입을 테이블의 해당 컬럼 타입과 비교합니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_max_block_size_bytes">
  ## input\_format\_max\_block\_size\_bytes
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "0"},{"label": "입력 형식이 생성하는 블록의 바이트 크기를 제한하는 새로운 설정"}]}]} />

입력 형식에서 데이터를 파싱하는 동안 생성되는 블록의 크기를 바이트 단위로 제한합니다. 블록이 ClickHouse 측에서 생성되는 행 기반 입력 형식에서 사용됩니다.
0은 바이트 단위 크기 제한이 없음을 의미합니다.

<div id="input_format_max_block_wait_ms">
  ## input\_format\_max\_block\_wait\_ms
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.2"},{"label": "0"},{"label": "입력 형식이 블록을 내보내기 전에 대기할 수 있는 최대 시간을 밀리초 단위로 제한하는 새로운 설정"}]}]} />

행 기반 입력 형식에서 파싱 중 블록을 내보내기 전에 대기할 수 있는 최대 시간을 밀리초 단위로 제한합니다. 0은 제한이 없음을 의미합니다.

<Note>
  이 옵션은 `input_format_connection_handling`이 활성화된 경우에만 동작합니다. 값을 설정하면 병렬 파싱도 비활성화되며 중복 제거도 불가능해집니다.
</Note>

<Note>
  스트리밍 방식으로 삽입할 때는 `min_insert_block_size_rows=0` 및 `min_insert_block_size_bytes=0`도 설정해야 합니다. 그렇지 않으면 파싱된 블록이 해당 임계값에 도달할 때까지 block squashing 단계에서 메모리에 계속 누적될 수 있어, 시의적절한 삽입이 이루어지지 않을 수 있습니다.
</Note>

**예시: Wikipedia 최근 변경 사항을 ClickHouse로 스트리밍 삽입하기**

```bash theme={null}
clickhouse-client --query 'CREATE TABLE wikipedia_edits (data JSON)'

curl -sS --globoff -H 'Accept: application/json' --no-buffer \
  'https://stream.wikimedia.org/v2/stream/recentchange' \
  | clickhouse-client \
      --query 'INSERT INTO wikipedia_edits FORMAT JSONAsObject' \
      --input_format_max_block_wait_ms 1000 \
      --input_format_connection_handling 1 \
      --min_insert_block_size_rows 0 \
      --min_insert_block_size_bytes 0
```

<div id="input_format_max_bytes_to_read_for_schema_inference">
  ## input\_format\_max\_bytes\_to\_read\_for\_schema\_inference
</div>

<SettingsInfoBlock type="UInt64" default_value="33554432" />

자동 스키마 추론을 위해 읽을 수 있는 데이터의 최대 바이트 수입니다.

<div id="input_format_max_rows_to_read_for_schema_inference">
  ## input\_format\_max\_rows\_to\_read\_for\_schema\_inference
</div>

<SettingsInfoBlock type="UInt64" default_value="25000" />

자동 스키마 추론을 위해 읽을 데이터의 최대 행 수입니다.

<div id="input_format_msgpack_number_of_columns">
  ## input\_format\_msgpack\_number\_of\_columns
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

삽입된 MsgPack 데이터의 컬럼 수입니다. 데이터에서 자동으로 스키마를 추론할 때 사용됩니다.

<div id="input_format_mysql_dump_map_column_names">
  ## input\_format\_mysql\_dump\_map\_column\_names
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

MySQL dump의 테이블 컬럼과 ClickHouse 테이블 컬럼을 이름 기준으로 매칭합니다

<div id="input_format_mysql_dump_table_name">
  ## input\_format\_mysql\_dump\_table\_name
</div>

데이터를 읽을 MySQL dump의 테이블 이름

<div id="input_format_native_allow_types_conversion">
  ## input\_format\_native\_allow\_types\_conversion
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.3"},{"label": "1"},{"label": "Native 입력 형식에서 데이터 타입 변환 허용"}]}]} />

Native 입력 형식에서 데이터 타입 변환 허용

<div id="input_format_native_decode_types_in_binary_format">
  ## input\_format\_native\_decode\_types\_in\_binary\_format
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.7"},{"label": "0"},{"label": "Native 출력 형식에서 타입 이름 대신 바이너리 형식으로 타입을 읽을 수 있도록 하는 새로운 설정이 추가되었습니다"}]}]} />

Native 입력 형식에서 타입 이름 대신 바이너리 형식으로 데이터 타입을 읽습니다

<div id="input_format_null_as_default">
  ## input\_format\_null\_as\_default
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "21.1"},{"label": "1"},{"label": "입력 형식에서 기본적으로 NULL을 기본값으로 삽입할 수 있도록 허용"}]}]} />

이 설정은 해당 필드의 데이터 타입이 [널 허용](/docs/ko/reference/data-types/nullable)이 아닌 경우, [NULL](/docs/ko/reference/syntax#literals) 필드를 [기본값(default value)](/docs/ko/reference/statements/create/table#default_values)으로 초기화할지 여부를 제어합니다.
컬럼 타입이 널 허용이 아니고 이 설정이 비활성화되어 있으면 `NULL`을 삽입할 때 예외가 발생합니다. 컬럼 타입이 널 허용이면 이 설정과 관계없이 `NULL` 값이 그대로 삽입됩니다.

이 설정은 대부분의 입력 형식에 적용됩니다.

복잡한 기본 표현식의 경우 `input_format_defaults_for_omitted_fields`도 함께 활성화해야 합니다.

가능한 값:

* 0 — 널 허용이 아닌 컬럼에 `NULL`을 삽입하면 예외가 발생합니다.
* 1 — `NULL` 필드는 컬럼의 기본값으로 초기화됩니다.

<div id="input_format_orc_allow_missing_columns">
  ## input\_format\_orc\_allow\_missing\_columns
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.12"},{"label": "1"},{"label": "기본적으로 ORC 파일에서 누락된 컬럼을 허용합니다"}]}]} />

ORC 입력 형식을 읽을 때 누락된 컬럼을 허용합니다

<div id="input_format_orc_case_insensitive_column_matching">
  ## input\_format\_orc\_case\_insensitive\_column\_matching
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

ORC 컬럼을 CH 컬럼과 매칭할 때 대소문자를 구분하지 않습니다.

<div id="input_format_orc_dictionary_as_low_cardinality">
  ## input\_format\_orc\_dictionary\_as\_low\_cardinality
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.10"},{"label": "1"},{"label": "ORC 파일을 읽을 때 ORC 딕셔너리로 인코딩된 컬럼을 LowCardinality 컬럼으로 처리합니다"}]}]} />

ORC 파일을 읽을 때 ORC 딕셔너리로 인코딩된 컬럼을 LowCardinality 컬럼으로 처리합니다.

<div id="input_format_orc_filter_push_down">
  ## input\_format\_orc\_filter\_push\_down
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

ORC 파일을 읽을 때 ORC metadata의 WHERE/PREWHERE 표현식, 최소/최대 통계 또는 블룸 필터를 기준으로 전체 stripe 또는 row group을 건너뜁니다.

<div id="input_format_orc_reader_time_zone_name">
  ## input\_format\_orc\_reader\_time\_zone\_name
</div>

<SettingsInfoBlock type="String" default_value="GMT" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.7"},{"label": "GMT"},{"label": "ORC 행 리더의 시간대 이름입니다. 기본 ORC 행 리더의 시간대는 GMT입니다."}]}]} />

ORC 행 리더의 시간대 이름입니다. 기본 ORC 행 리더의 시간대는 GMT입니다.

<div id="input_format_orc_row_batch_size">
  ## input\_format\_orc\_row\_batch\_size
</div>

<SettingsInfoBlock type="Int64" default_value="100000" />

ORC stripe를 읽을 때의 배치 크기입니다.

<div id="input_format_orc_skip_columns_with_unsupported_types_in_schema_inference">
  ## input\_format\_orc\_skip\_columns\_with\_unsupported\_types\_in\_schema\_inference
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

ORC 포맷에서 스키마 추론 시 지원되지 않는 타입의 컬럼을 건너뜁니다

<div id="input_format_orc_use_fast_decoder">
  ## input\_format\_orc\_use\_fast\_decoder
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

더 빠른 ORC 디코더 구현을 사용합니다.

<div id="input_format_parallel_parsing">
  ## input\_format\_parallel\_parsing
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

데이터 포맷을 순서를 유지한 채 병렬로 파싱할지 설정합니다. [TabSeparated (TSV)](/docs/ko/reference/formats/TabSeparated/TabSeparated), [TSKV](/docs/ko/reference/formats/TabSeparated/TSKV), [CSV](/docs/ko/reference/formats/CSV/CSV), [JSONEachRow](/docs/ko/reference/formats/JSON/JSONEachRow) 포맷에서만 지원됩니다.

가능한 값:

* 1 — 활성화됨.
* 0 — 비활성화됨.

<div id="input_format_parquet_allow_geoparquet_parser">
  ## input\_format\_parquet\_allow\_geoparquet\_parser
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "1"},{"label": "Parquet 파일의 geo 컬럼을 사용하기 위한 새로운 설정"}]}]} />

geo 컬럼 파서를 사용해 Array(UInt8)을 Point/Linestring/Polygon/MultiLineString/MultiPolygon 타입으로 변환합니다

<div id="input_format_parquet_allow_missing_columns">
  ## input\_format\_parquet\_allow\_missing\_columns
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.12"},{"label": "1"},{"label": "기본적으로 Parquet 파일에서 누락된 컬럼을 허용합니다"}]}]} />

Parquet 입력 형식을 읽을 때 누락된 컬럼을 허용합니다

<div id="input_format_parquet_bloom_filter_push_down">
  ## input\_format\_parquet\_bloom\_filter\_push\_down
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "1"},{"label": "Parquet 파일을 읽을 때 Parquet 메타데이터의 WHERE\/PREWHERE 표현식과 블룸 필터를 기반으로 row group 전체를 건너뜁니다."}]}, {"id": "row-2","items": [{"label": "24.10"},{"label": "0"},{"label": "Parquet 파일을 읽을 때 Parquet 메타데이터의 WHERE\/PREWHERE 표현식과 블룸 필터를 기반으로 row group 전체를 건너뜁니다."}]}]} />

Parquet 파일을 읽을 때 Parquet 메타데이터의 WHERE 표현식과 블룸 필터를 기반으로 row group 전체를 건너뜁니다.

<div id="input_format_parquet_case_insensitive_column_matching">
  ## input\_format\_parquet\_case\_insensitive\_column\_matching
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

Parquet 컬럼을 CH 컬럼과 매칭할 때 대소문자를 구분하지 않습니다.

<div id="input_format_parquet_enable_json_parsing">
  ## input\_format\_parquet\_enable\_json\_parsing
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.6"},{"label": "1"},{"label": "Parquet 파일을 읽을 때 JSON 컬럼을 ClickHouse의 JSON 컬럼으로 파싱합니다."}]}]} />

Parquet 파일을 읽을 때 JSON 컬럼을 ClickHouse의 JSON 컬럼으로 파싱합니다.

<div id="input_format_parquet_enable_row_group_prefetch">
  ## input\_format\_parquet\_enable\_row\_group\_prefetch
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.10"},{"label": "1"},{"label": "Parquet 파싱 중 row group 프리페치를 활성화합니다. 현재는 단일 스레드 파싱에서만 프리페치를 수행할 수 있습니다."}]}]} />

Parquet 파싱 중 row group 프리페치를 활성화합니다. 현재는 단일 스레드 파싱에서만 프리페치를 수행할 수 있습니다.

<div id="input_format_parquet_filter_push_down">
  ## input\_format\_parquet\_filter\_push\_down
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

Parquet 파일을 읽을 때 WHERE/PREWHERE 표현식과 Parquet 메타데이터에 있는 최소/최대 통계를 바탕으로 전체 row group을 건너뜁니다.

<div id="input_format_parquet_local_file_min_bytes_for_seek">
  ## input\_format\_parquet\_local\_file\_min\_bytes\_for\_seek
</div>

<SettingsInfoBlock type="UInt64" default_value="8192" />

Parquet 입력 형식에서 로컬 읽기(file)가 ignore를 사용해 읽는 대신 seek를 수행하는 데 필요한 최소 바이트 수

<div id="input_format_parquet_local_time_as_utc">
  ## input\_format\_parquet\_local\_time\_as\_utc
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.11"},{"label": "1"},{"label": "Parquet의 'timezone이 없는 local time' 유형에 더 적합한 DateTime64(..., 'UTC') 타입을 사용합니다."}]}]} />

isAdjustedToUTC=false인 Parquet 타임스탬프에 대해 스키마 추론 시 사용할 데이터 타입을 결정합니다. true이면 DateTime64(..., 'UTC')를, false이면 DateTime64(...)를 사용합니다. ClickHouse에는 로컬 wall-clock time을 위한 데이터 타입이 없으므로 두 동작 모두 완전히 올바르지는 않습니다. 다소 역설적으로 보일 수 있지만, 'UTC' 타임스탬프를 String으로 포맷하면 올바른 로컬 시간 표현이 생성되므로 'true' 쪽이 아마도 덜 부정확한 선택입니다.

<div id="input_format_parquet_max_block_size">
  ## input\_format\_parquet\_max\_block\_size
</div>

<SettingsInfoBlock type="NonZeroUInt64" default_value="65409" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "65409"},{"label": "Parquet 리더의 블록 크기를 늘렸습니다."}]}]} />

Parquet 리더의 최대 블록 크기입니다.

<div id="input_format_parquet_memory_high_watermark">
  ## input\_format\_parquet\_memory\_high\_watermark
</div>

<SettingsInfoBlock type="UInt64" default_value="4294967296" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "4294967296"},{"label": "새로운 설정"}]}]} />

Parquet 리더 v3의 대략적인 메모리 한도입니다. 병렬로 읽을 수 있는 row group 또는 컬럼 수를 제한합니다. 하나의 쿼리에서 여러 파일을 읽는 경우 이 제한은 해당 파일들 전체의 총 메모리 사용량에 적용됩니다.

<div id="input_format_parquet_memory_low_watermark">
  ## input\_format\_parquet\_memory\_low\_watermark
</div>

<SettingsInfoBlock type="UInt64" default_value="2097152" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "2097152"},{"label": "새로운 설정"}]}]} />

메모리 사용량이 임계값보다 낮을 때 프리페치를 더 적극적으로 예약합니다. 예를 들어 네트워크를 통해 읽어야 하는 작은 블룸 필터가 많은 경우에 유용할 수 있습니다.

<div id="input_format_parquet_page_filter_push_down">
  ## input\_format\_parquet\_page\_filter\_push\_down
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "1"},{"label": "새로운 설정 (input_format_parquet_use_native_reader_v3가 비활성화된 경우 효과가 없습니다)"}]}]} />

컬럼 인덱스의 최소/최대값을 사용해 페이지를 건너뜁니다.

<div id="input_format_parquet_prefer_block_bytes">
  ## input\_format\_parquet\_prefer\_block\_bytes
</div>

<SettingsInfoBlock type="UInt64" default_value="16744704" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "16744704"},{"label": "Parquet 리더가 출력하는 블록의 평균 바이트 수입니다."}]}]} />

Parquet 리더가 출력하는 블록의 평균 바이트 수

<div id="input_format_parquet_preserve_order">
  ## input\_format\_parquet\_preserve\_order
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.5"},{"label": "0"},{"label": "더 높은 병렬성을 위해 Parquet 리더가 행을 재정렬할 수 있도록 허용합니다."}]}]} />

Parquet 파일을 읽을 때 행이 재정렬되지 않도록 합니다. 일반적으로 행 순서는 보장되지 않고, 쿼리 파이프라인의 다른 부분에서 이 순서가 깨질 수 있으므로 권장하지 않습니다. 대신 `ORDER BY _row_number`를 사용하세요.

<div id="input_format_parquet_skip_columns_with_unsupported_types_in_schema_inference">
  ## input\_format\_parquet\_skip\_columns\_with\_unsupported\_types\_in\_schema\_inference
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

Parquet 포맷에서 스키마 추론 시 지원되지 않는 타입의 컬럼을 건너뜁니다

<div id="input_format_parquet_use_offset_index">
  ## input\_format\_parquet\_use\_offset\_index
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "1"},{"label": "새로운 설정 (input_format_parquet_use_native_reader_v3가 비활성화되어 있으면 효과 없음)"}]}]} />

페이지 필터링을 사용하지 않을 때 Parquet 파일에서 페이지를 읽는 방식을 약간 조정합니다.

<div id="input_format_parquet_verify_checksums">
  ## input\_format\_parquet\_verify\_checksums
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.11"},{"label": "1"},{"label": "새 설정입니다."}]}]} />

Parquet 파일을 읽을 때 페이지 체크섬을 검증합니다.

<div id="input_format_protobuf_flatten_google_wrappers">
  ## input\_format\_protobuf\_flatten\_google\_wrappers
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

일반 비중첩 컬럼에 대해 Google 래퍼를 활성화합니다. 예를 들어 String 컬럼 'str'에 google.protobuf.StringValue 'str'를 사용할 수 있습니다. 널 허용 컬럼에서는 비어 있는 래퍼를 기본값으로 인식하고, 누락된 값은 NULL로 인식합니다.

<div id="input_format_protobuf_oneof_presence">
  ## input\_format\_protobuf\_oneof\_presence
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.9"},{"label": "0"},{"label": "새로운 설정"}]}]} />

특수 열에 enum 값을 설정하여 protobuf oneof에서 발견된 필드를 나타냅니다

<div id="input_format_protobuf_skip_fields_with_unsupported_types_in_schema_inference">
  ## input\_format\_protobuf\_skip\_fields\_with\_unsupported\_types\_in\_schema\_inference
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

Protobuf 포맷의 스키마 추론 시 지원되지 않는 타입의 필드를 건너뜁니다

<div id="input_format_record_errors_file_path">
  ## input\_format\_record\_errors\_file\_path
</div>

텍스트 형식(CSV, TSV)을 읽는 동안 발생하는 오류를 기록하는 데 사용하는 파일 경로입니다.

<div id="input_format_skip_unknown_fields">
  ## input\_format\_skip\_unknown\_fields
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "22.6"},{"label": "1"},{"label": "일부 입력 형식에서 컬럼 부분 집합 읽기 최적화"}]}]} />

추가 데이터의 삽입을 건너뛸지 여부를 활성화하거나 비활성화합니다.

데이터를 쓸 때 입력 데이터에 대상 테이블에 존재하지 않는 컬럼이 포함되어 있으면 ClickHouse는 예외를 발생시킵니다. 스키핑이 활성화되면 ClickHouse는 추가 데이터를 삽입하지 않으며 예외도 발생시키지 않습니다.

지원되는 포맷:

* [JSONEachRow](/docs/ko/reference/formats/JSON/JSONEachRow) (및 기타 JSON 포맷)
* [BSONEachRow](/docs/ko/reference/formats/BSONEachRow) (및 기타 JSON 포맷)
* [TSKV](/docs/ko/reference/formats/TabSeparated/TSKV)
* 접미사 WithNames/WithNamesAndTypes가 붙는 모든 포맷
* [MySQLDump](/docs/ko/reference/formats/MySQLDump)
* [Native](/docs/ko/reference/formats/Native)

가능한 값:

* 0 — 비활성화됨.
* 1 — 활성화됨.

<div id="input_format_try_infer_dates">
  ## input\_format\_try\_infer\_dates
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

활성화되면 ClickHouse는 형식의 스키마 추론에서 문자열 필드로부터 `Date` 유형을 추론하려고 합니다. 입력 데이터의 한 컬럼에 있는 모든 필드가 날짜로 성공적으로 파싱되면 결과 유형은 `Date`가 되고, 하나라도 날짜로 파싱되지 않으면 결과 유형은 `String`이 됩니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_try_infer_datetimes">
  ## input\_format\_try\_infer\_datetimes
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

활성화되면 ClickHouse는 텍스트 형식의 스키마 추론에서 문자열 필드로부터 `DateTime64` 유형을 추론하려고 합니다. 입력 데이터의 한 컬럼에 있는 모든 필드가 datetime으로 성공적으로 파싱되면 결과 유형은 `DateTime64`가 되며, 하나 이상의 필드가 datetime으로 파싱되지 않으면 결과 유형은 `String`이 됩니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_try_infer_datetimes_only_datetime64">
  ## input\_format\_try\_infer\_datetimes\_only\_datetime64
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.8"},{"label": "0"},{"label": "데이터 포맷에서 DateTime64 대신 DateTime을 추론하도록 허용합니다"}]}]} />

input\_format\_try\_infer\_datetimes가 활성화되면 DateTime 타입은 추론하지 않고 DateTime64만 추론합니다

<div id="input_format_try_infer_exponent_floats">
  ## input\_format\_try\_infer\_exponent\_floats
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.2"},{"label": "0"},{"label": "기본적으로 지수 표기법의 부동소수점 수는 추론하지 않습니다"}]}]} />

형식에서 스키마 추론을 수행할 때 지수 표기법의 부동소수점 수를 추론하도록 시도합니다(JSON은 예외이며, 지수 표기법 숫자는 항상 추론됩니다)

<div id="input_format_try_infer_integers">
  ## input\_format\_try\_infer\_integers
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

활성화하면 ClickHouse는 형식의 스키마 추론에서 부동소수점 값 대신 정수를 추론하려고 합니다. 입력 데이터의 해당 컬럼에 있는 숫자가 모두 정수이면 결과 유형은 `Int64`이고, 숫자 중 하나라도 부동소수점 값이면 결과 유형은 `Float64`입니다.

기본적으로 활성화되어 있습니다.

<div id="input_format_try_infer_variants">
  ## input\_format\_try\_infer\_variants
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.9"},{"label": "0"},{"label": "컬럼/배열 원소에 가능한 타입이 둘 이상인 경우 텍스트 형식에서 Variant 타입 추론을 시도합니다"}]}]} />

활성화하면 ClickHouse는 텍스트 형식의 스키마 추론에서 컬럼/배열 원소에 가능한 타입이 둘 이상인 경우 [`Variant`](/docs/ko/reference/data-types/variant) 타입 추론을 시도합니다.

가능한 값:

* 0 — 비활성화됨.
* 1 — 활성화됨.

<div id="input_format_tsv_allow_variable_number_of_columns">
  ## input\_format\_tsv\_allow\_variable\_number\_of\_columns
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

TSV 입력에서 추가 컬럼(파일에 예상보다 많은 컬럼이 있는 경우)은 무시하고, 누락된 필드는 기본값으로 처리합니다

<div id="input_format_tsv_crlf_end_of_line">
  ## input\_format\_tsv\_crlf\_end\_of\_line
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.5"},{"label": "0"},{"label": "TSV 포맷에서 CRLF 줄 끝을 읽을 수 있도록 합니다"}]}]} />

true로 설정하면 file 함수가 `\n` 대신 `\r\n`을 사용하는 TSV 포맷을 읽습니다.

<div id="input_format_tsv_detect_header">
  ## input\_format\_tsv\_detect\_header
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.1"},{"label": "1"},{"label": "기본적으로 TSV 포맷에서 이름과 타입이 포함된 헤더를 감지합니다"}]}]} />

TSV 포맷에서 이름과 타입이 포함된 헤더를 자동으로 감지합니다

<div id="input_format_tsv_empty_as_default">
  ## input\_format\_tsv\_empty\_as\_default
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

TSV 입력에서 빈 필드를 기본값으로 간주합니다.

<div id="input_format_tsv_enum_as_number">
  ## input\_format\_tsv\_enum\_as\_number
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

TSV 포맷에서 삽입된 enum 값을 enum 인덱스로 간주합니다.

<div id="input_format_tsv_skip_first_lines">
  ## input\_format\_tsv\_skip\_first\_lines
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

TSV 포맷 데이터의 시작 부분에서 지정한 수의 줄을 건너뜁니다

<div id="input_format_tsv_skip_trailing_empty_lines">
  ## input\_format\_tsv\_skip\_trailing\_empty\_lines
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

TSV 포맷에서 끝부분의 빈 줄을 건너뜁니다

<div id="input_format_tsv_use_best_effort_in_schema_inference">
  ## input\_format\_tsv\_use\_best\_effort\_in\_schema\_inference
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

TSV 포맷에서 스키마를 추론할 때 일부 조정과 휴리스틱을 사용합니다

<div id="input_format_values_accurate_types_of_literals">
  ## input\_format\_values\_accurate\_types\_of\_literals
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

Values 형식의 경우, Template를 사용해 표현식을 구문 분석하고 해석할 때 잠재적인 오버플로우 및 정밀도 문제를 방지하기 위해 리터럴의 실제 타입을 확인합니다.

<div id="input_format_values_deduce_templates_of_expressions">
  ## input\_format\_values\_deduce\_templates\_of\_expressions
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

Values 형식의 경우: 필드를 streaming parser로 구문 분석할 수 없으면 SQL parser를 실행하고, SQL 표현식의 Template을 추론한 다음, Template을 사용해 모든 행을 구문 분석한 후 모든 행에 대해 표현식을 해석합니다.

<div id="input_format_values_interpret_expressions">
  ## input\_format\_values\_interpret\_expressions
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

Values 형식에서 필드를 streaming parser로 파싱할 수 없으면 SQL parser를 실행하여 이를 SQL 표현식으로 해석하려고 시도합니다.

<div id="input_format_with_names_use_header">
  ## input\_format\_with\_names\_use\_header
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "20.5"},{"label": "1"},{"label": "WithNames/WithNamesAndTypes 접미사가 있는 포맷에서 이름이 포함된 헤더를 사용하도록 설정합니다"}]}]} />

데이터를 삽입할 때 컬럼 순서를 검사할지 여부를 설정합니다.

삽입 성능을 높이려면 입력 데이터의 컬럼 순서가 대상 테이블과 동일하다고 확신할 수 있는 경우 이 검사를 비활성화하는 것이 좋습니다.

지원되는 포맷:

* [CSVWithNames](/docs/ko/reference/formats/CSV/CSVWithNames)
* [CSVWithNamesAndTypes](/docs/ko/reference/formats/CSV/CSVWithNamesAndTypes)
* [TabSeparatedWithNames](/docs/ko/reference/formats/TabSeparated/TabSeparatedWithNames)
* [TabSeparatedWithNamesAndTypes](/docs/ko/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes)
* [JSONCompactEachRowWithNames](/docs/ko/reference/formats/JSON/JSONCompactEachRowWithNames)
* [JSONCompactEachRowWithNamesAndTypes](/docs/ko/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes)
* [JSONCompactStringsEachRowWithNames](/docs/ko/reference/formats/JSON/JSONCompactStringsEachRowWithNames)
* [JSONCompactStringsEachRowWithNamesAndTypes](/docs/ko/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes)
* [RowBinaryWithNames](/docs/ko/reference/formats/RowBinary/RowBinaryWithNames)
* [RowBinaryWithNamesAndTypes](/docs/ko/reference/formats/RowBinary/RowBinaryWithNamesAndTypes)
* [CustomSeparatedWithNames](/docs/ko/reference/formats/CustomSeparated/CustomSeparatedWithNames)
* [CustomSeparatedWithNamesAndTypes](/docs/ko/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes)

가능한 값:

* 0 — 비활성화됨.
* 1 — 활성화됨.

<div id="input_format_with_types_use_header">
  ## input\_format\_with\_types\_use\_header
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

포맷 파서가 입력 데이터의 데이터 타입이 대상 테이블의 데이터 타입과 일치하는지 검사할지 여부를 제어합니다.

지원되는 포맷:

* [CSVWithNamesAndTypes](/docs/ko/reference/formats/CSV/CSVWithNamesAndTypes)
* [TabSeparatedWithNamesAndTypes](/docs/ko/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes)
* [JSONCompactEachRowWithNamesAndTypes](/docs/ko/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes)
* [JSONCompactStringsEachRowWithNamesAndTypes](/docs/ko/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes)
* [RowBinaryWithNamesAndTypes](/docs/ko/reference/formats/RowBinary/RowBinaryWithNamesAndTypes)
* [CustomSeparatedWithNamesAndTypes](/docs/ko/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes)

가능한 값:

* 0 — 비활성화됨.
* 1 — 활성화됨.
