> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-fix-nav-issues.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# フォーマット設定

> 入出力フォーマットを制御する設定。

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  const cells = [["Type", <Badge color="surface">{type}</Badge>], ["Default value", <Badge color="surface">{default_value}</Badge>]];
  if (changeable_without_restart) {
    const isYes = String(changeable_without_restart).trim().toLowerCase() === "yes";
    const badge = isYes ? <Badge icon="check" stroke color="green" size="sm">Yes</Badge> : <Badge icon="x" stroke color="red" size="sm">No</Badge>;
    cells.push(["Changeable without restart", badge]);
  }
  return <table>
      <thead>
        <tr>
          {cells.map(([h]) => <th key={h}>{h}</th>)}
        </tr>
      </thead>
      <tbody>
        <tr>
          {cells.map(([h, v]) => <td key={h}>{v}</td>)}
        </tr>
      </tbody>
    </table>;
};

export const galaxyOnClick = eventName => () => {
  try {
    if (typeof window !== "undefined" && window.galaxy && eventName) {
      window.galaxy.track(eventName, {
        interaction: "click"
      });
    }
  } catch (e) {}
};

export const BetaBadge = ({link, galaxyTrack, galaxyEvent}) => {
  if (link) {
    return <a href={link} target="_blank" rel="noopener noreferrer" className="betaBadge" onClick={galaxyTrack && galaxyEvent ? galaxyOnClick(galaxyEvent) : undefined}>
                <Icon />
                <span>Beta</span>
            </a>;
  }
  return <div className="betaBadge">
            <Icon />
            <span>
                Beta feature. 
                <u>
                    <a href="/docs/beta-and-experimental-features#beta-features">
                        Learn more.
                    </a>
                </u>
            </span>
        </div>;
};

export const ExperimentalBadge = () => {
  return <div className="experimentalBadge">
            <div className="experimentalIcon">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path strokeWidth="1.25" d="M5.5 2H10.5" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M9.50015 2V6.19625L13.4283 12.7425C13.4738 12.8183 13.4985 12.9049 13.4996 12.9934C13.5008 13.0818 13.4785 13.169 13.435 13.246C13.3914 13.323 13.3283 13.3871 13.2519 13.4317C13.1755 13.4764 13.0886 13.4999 13.0002 13.5H3.00015C2.91164 13.5 2.8247 13.4766 2.74822 13.432C2.67174 13.3874 2.60847 13.3233 2.56487 13.2463C2.52126 13.1693 2.49889 13.082 2.50004 12.9935C2.50119 12.905 2.52582 12.8184 2.5714 12.7425L6.50015 6.19625V2" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M4.47656 9.56754C5.30344 9.41254 6.47656 9.47942 7.99969 10.25C10.0153 11.2707 11.4216 11.0569 12.2184 10.7282" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
        </div>
            Experimental feature. <u><a href="/docs/beta-and-experimental-features#experimental-features">Learn more.</a></u>
        </div>;
};

これらの設定は、[ソースコード](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/FormatFactorySettings.h)から自動生成されています。

<div id="allow_special_bool_values_inside_variant">
  ## allow\_special\_bool\_values\_inside\_variant
</div>

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

"on"、"off"、"enable"、"disable" などの特殊なテキスト表現の bool 値を、Variant 型内の Bool 値としてパースできるようにします。

<div id="bool_false_representation">
  ## bool\_false\_representation
</div>

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

TSV/CSV/Vertical/Pretty フォーマットで bool の false 値を表すテキスト。

<div id="bool_true_representation">
  ## bool\_true\_representation
</div>

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

TSV/CSV/Vertical/Pretty フォーマットで、bool 型の true 値を表すテキスト。

<div id="check_conversion_from_numbers_to_enum">
  ## check\_conversion\_from\_numbers\_to\_enum
</div>

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

値が Enum に存在しない場合、Numbers から Enum への変換時に例外を発生させます。

設定可能な値:

* 0 — 無効。
* 1 — 有効。

**例**

```text theme={null}
CREATE TABLE tab (
  val Enum('first' = 1, 'second' = 2, 'third' = 3)
) ENGINE = Memory;

INSERT INTO tab SETTINGS check_conversion_from_numbers_to_enum = 1 VALUES (4); -- エラーを返す
```

<div id="column_names_for_schema_inference">
  ## column\_names\_for\_schema\_inference
</div>

カラム名を持たないフォーマットのスキーマ推論で使用するカラム名の一覧です。フォーマット: 'column1,column2,column3,...'

<div id="date_time_64_output_format_cut_trailing_zeros_align_to_groups_of_thousands">
  ## date\_time\_64\_output\_format\_cut\_trailing\_zeros\_align\_to\_groups\_of\_thousands
</div>

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

datetime64 値の末尾のゼロを動的に削除し、出力の scale を \[0, 3, 6] に調整します。
それぞれ '秒'、'ミリ秒'、'マイクロ秒' に対応します。

<div id="date_time_input_format">
  ## date\_time\_input\_format
</div>

<SettingsInfoBlock type="DateTimeInputFormat" default_value="best_effort" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.5"},{"label": "best_effort"},{"label": "使い勝手の向上"}]}]} />

日付と時刻のテキスト表現を解析するパーサーを選択できます。

この設定は[日付と時刻の関数](/ja/reference/functions/regular-functions/date-time-functions)には適用されません。

設定可能な値:

* `'best_effort'` — 拡張パースを有効にします。

  ClickHouse は基本的な `YYYY-MM-DD HH:MM:SS` フォーマットと、すべての [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) の日付・時刻フォーマットをパースできます。たとえば、`'2018-06-08T01:02:03.000Z'` です。

* `'best_effort_us'` — `best_effort` と似ています (違いについては [parseDateTimeBestEffortUS](/ja/reference/functions/regular-functions/type-conversion-functions#parseDateTimeBestEffortUS) を参照してください)

* `'basic'` — 基本パーサーを使用します。

  ClickHouse は基本的な `YYYY-MM-DD HH:MM:SS` または `YYYY-MM-DD` フォーマットのみをパースできます。たとえば、`2019-08-20 10:18:56` または `2019-08-20` です。

関連項目：

* [DateTime データ型。](/ja/reference/data-types/datetime)
* [日付と時刻を扱う関数。](/ja/reference/functions/regular-functions/date-time-functions)

<div id="date_time_output_format">
  ## date\_time\_output\_format
</div>

<SettingsInfoBlock type="DateTimeOutputFormat" default_value="simple" />

日付と時刻のテキスト表現の出力フォーマットを選択できます。

設定可能な値:

* `simple` - シンプルな出力フォーマット。

  ClickHouse は、日付と時刻を `YYYY-MM-DD hh:mm:ss` フォーマットで出力します。たとえば、`2019-08-20 10:18:56` です。計算は、データ型の time zone (存在する場合) または server の time zone に基づいて行われます。

* `iso` - ISO 出力フォーマット。

  ClickHouse は、日付と時刻を [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) の `YYYY-MM-DDThh:mm:ssZ` フォーマットで出力します。たとえば、`2019-08-20T10:18:56Z` です。出力は UTC であることに注意してください (`Z` は UTC を意味します) 。

* `unix_timestamp` - Unix timestamp 出力フォーマット。

  ClickHouse は、日付と時刻を [Unix timestamp](https://en.wikipedia.org/wiki/Unix_time) フォーマットで出力します。たとえば、`1566285536` です。

関連項目:

* [DateTime データ型。](/ja/reference/data-types/datetime)
* [日付と時刻を扱う関数。](/ja/reference/functions/regular-functions/date-time-functions)

<div id="date_time_overflow_behavior">
  ## date\_time\_overflow\_behavior
</div>

<SettingsInfoBlock type="DateTimeOverflowBehavior" default_value="ignore" />

[Date](/ja/reference/data-types/date)、[Date32](/ja/reference/data-types/date32)、[DateTime](/ja/reference/data-types/datetime)、[DateTime64](/ja/reference/data-types/datetime64)、または整数を Date、Date32、DateTime、DateTime64 に変換する際に、値が結果の型で表現できない場合の動作を定義します。

設定可能な値:

* `ignore` — オーバーフローを暗黙的に無視します。結果は未定義です。
* `throw` — オーバーフローが発生した場合に例外をスローします。
* `saturate` — 結果を飽和させます。値が対象の型で表現可能な最小値より小さい場合、結果は表現可能な最小値になります。値が対象の型で表現可能な最大値より大きい場合、結果は表現可能な最大値になります。

デフォルト値: `ignore`。

<div id="errors_output_format">
  ## errors\_output\_format
</div>

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

エラーをテキスト出力に書き込む方法。

<div id="format_avro_schema_registry_connection_timeout">
  ## format\_avro\_schema\_registry\_connection\_timeout
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.5"},{"label": "1"},{"label": "AvroConfluent フォーマットで使用される Confluent スキーマレジストリ HTTP クライアントの接続タイムアウト（秒単位）を制御するための新しい設定。"}]}]} />

AvroConfluent フォーマット用の設定です。Confluent スキーマレジストリ HTTP クライアントの接続タイムアウトを秒単位で指定します。スキーマの取得とスキーマ登録の両方で使用されます。0 より大きく、600 (10 分) 未満である必要があります。

<div id="format_avro_schema_registry_receive_timeout">
  ## format\_avro\_schema\_registry\_receive\_timeout
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.5"},{"label": "1"},{"label": "AvroConfluent フォーマットで使用される Confluent スキーマレジストリ HTTP クライアントの受信タイムアウト（秒単位）を制御する新しい設定です。"}]}]} />

AvroConfluent フォーマットで使用される Confluent スキーマレジストリ HTTP クライアントの受信タイムアウト (秒単位) です。スキーマの取得と登録の両方で使用されます。0 より大きく、600 (10 分) 未満である必要があります。

<div id="format_avro_schema_registry_send_timeout">
  ## format\_avro\_schema\_registry\_send\_timeout
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.5"},{"label": "1"},{"label": "AvroConfluent フォーマットで使用される Confluent スキーマレジストリ HTTP クライアントの送信タイムアウト（秒単位）を制御するための新しい設定。"}]}]} />

AvroConfluent フォーマットで使用される Confluent スキーマレジストリ HTTP クライアントの送信タイムアウト (秒単位) です。スキーマの取得とスキーマ登録の両方に使用されます。0 より大きく、600 (10 分) 未満である必要があります。

<div id="format_avro_schema_registry_url">
  ## format\_avro\_schema\_registry\_url
</div>

AvroConfluent フォーマット用: Confluent スキーマレジストリの URL。

<div id="format_binary_max_array_size">
  ## format\_binary\_max\_array\_size
</div>

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

RowBinary フォーマットにおける Array の最大許容サイズです。データが破損している場合に、大量のメモリが割り当てられるのを防ぎます。0 は制限なしを意味します

<div id="format_binary_max_object_size">
  ## format\_binary\_max\_object\_size
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.12"},{"label": "100000"},{"label": "JSON type のバイナリデシリアライゼーション時のオブジェクトの最大サイズを制限する新しい設定"}]}]} />

JSON type の RowBinary フォーマットにおいて、単一の Object に含められるパスの最大数です。破損したデータによって大量のメモリが割り当てられるのを防ぎます。0 は無制限を意味します

<div id="format_binary_max_string_size">
  ## format\_binary\_max\_string\_size
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "22.12"},{"label": "1073741824"},{"label": "大量のメモリが割り当てられるのを防止"}]}]} />

RowBinary フォーマットにおける String の最大許容サイズです。破損したデータの場合に大量のメモリが割り当てられるのを防ぎます。0 は制限がないことを意味します

<div id="format_capn_proto_enum_comparising_mode">
  ## format\_capn\_proto\_enum\_comparising\_mode
</div>

<SettingsInfoBlock type="CapnProtoEnumComparingMode" default_value="by_values" />

ClickHouse Enum と CapnProto Enum の対応付け方法

<div id="format_capn_proto_max_message_size">
  ## format\_capn\_proto\_max\_message\_size
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.12"},{"label": "1073741824"},{"label": "大量のメモリ割り当てを防止"}]}]} />

単一の CapnProto メッセージの最大サイズ (バイト単位) です。これは、不正なデータや破損したデータによって過剰なメモリ割り当てが発生するのを防ぎます。デフォルト値は 1 GiB です。

<div id="format_capn_proto_use_autogenerated_schema">
  ## format\_capn\_proto\_use\_autogenerated\_schema
</div>

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

format\_schema が未設定の場合、自動生成された CapnProto スキーマを使用します

<div id="format_csv_allow_double_quotes">
  ## format\_csv\_allow\_double\_quotes
</div>

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

true に設定すると、ダブルクォートで囲まれた文字列を許可します。

<div id="format_csv_allow_single_quotes">
  ## format\_csv\_allow\_single\_quotes
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "22.7"},{"label": "0"},{"label": "ほとんどのツールでは、CSV 内のシングルクォートを特別扱いしないため、デフォルトでも特別扱いしません"}]}]} />

true に設定すると、シングルクォートで囲まれた文字列を許可します。

<div id="format_csv_delimiter">
  ## format\_csv\_delimiter
</div>

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

CSVデータで区切り文字として扱う文字を指定します。文字列で設定する場合、その長さは1である必要があります。

<div id="format_csv_null_representation">
  ## format\_csv\_null\_representation
</div>

<SettingsInfoBlock type="String" default_value="\N" />

CSVフォーマットにおけるカスタムNULL表現

<div id="format_custom_escaping_rule">
  ## format\_custom\_escaping\_rule
</div>

<SettingsInfoBlock type="EscapingRule" default_value="Escaped" />

フィールドのエスケープルール (CustomSeparated フォーマット)

<div id="format_custom_field_delimiter">
  ## format\_custom\_field\_delimiter
</div>

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

フィールド間の区切り文字 (CustomSeparated フォーマット)

<div id="format_custom_result_after_delimiter">
  ## format\_custom\_result\_after\_delimiter
</div>

結果セットの後に付く接尾辞 (CustomSeparated フォーマット用)

<div id="format_custom_result_before_delimiter">
  ## format\_custom\_result\_before\_delimiter
</div>

結果セットの前に付加されるプレフィックス (CustomSeparated フォーマット用)

<div id="format_custom_row_after_delimiter">
  ## format\_custom\_row\_after\_delimiter
</div>

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

最後のカラムのフィールドの後ろに付く区切り文字 (CustomSeparated フォーマット)

<div id="format_custom_row_before_delimiter">
  ## format\_custom\_row\_before\_delimiter
</div>

最初のカラムのフィールドの前に置かれる区切り文字 (CustomSeparated フォーマット)

<div id="format_custom_row_between_delimiter">
  ## format\_custom\_row\_between\_delimiter
</div>

行と行の間の区切り文字 (CustomSeparated フォーマット用)

<div id="format_display_secrets_in_show_and_select">
  ## format\_display\_secrets\_in\_show\_and\_select
</div>

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

テーブル、データベース、テーブル関数、Dictionaries に対する `SHOW` および `SELECT` クエリでシークレットを表示するかどうかを有効または無効にします。

シークレットを表示するには、ユーザーに対して次の設定と権限も必要です。
[`display_secrets_in_show_and_select` server setting](/ja/reference/settings/server-settings/settings#display_secrets_in_show_and_select)
が有効になっており、さらに
[`displaySecretsInShowAndSelect`](/ja/reference/statements/grant#displaysecretsinshowandselect) 権限を持っている必要があります。

設定可能な値:

* 0 — 無効。
* 1 — 有効。

<div id="format_json_object_each_row_column_for_object_name">
  ## format\_json\_object\_each\_row\_column\_for\_object\_name
</div>

[JSONObjectEachRow](/ja/reference/formats/JSON/JSONObjectEachRow)フォーマットで、オブジェクト名の保存/書き込みに使用するカラム名です。
カラムの型は String である必要があります。値が空の場合、オブジェクト名にはデフォルトの名前 `row_{i}` が使用されます。

<div id="format_protobuf_use_autogenerated_schema">
  ## format\_protobuf\_use\_autogenerated\_schema
</div>

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

format\_schema が設定されていない場合、自動生成された Protobuf を使用します

<div id="format_regexp">
  ## format\_regexp
</div>

正規表現 (Regexp フォーマット用)

<div id="format_regexp_escaping_rule">
  ## format\_regexp\_escaping\_rule
</div>

<SettingsInfoBlock type="EscapingRule" default_value="Raw" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "20.10"},{"label": "Raw"},{"label": "Regexp フォーマットのデフォルトのエスケープルールとして Raw を使用し、ユーザーの期待により近い動作にする"}]}]} />

フィールドのエスケープルール (Regexp フォーマット用)

<div id="format_regexp_skip_unmatched">
  ## format\_regexp\_skip\_unmatched
</div>

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

正規表現に一致しない行をスキップします (Regexp フォーマット)

<div id="format_schema">
  ## format\_schema
</div>

このパラメーターは、[Cap'n Proto](https://capnproto.org/) や [Protobuf](https://developers.google.com/protocol-buffers/) など、スキーマ定義を必要とするフォーマットを使用する場合に役立ちます。値はフォーマットによって異なります。

<div id="format_schema_message_name">
  ## format\_schema\_message\_name
</div>

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.6"},{"label": ""},{"label": "新しい設定"}]}]} />

`format_schema` で定義したスキーマ内で必要なメッセージ名を指定します。
従来の format\_schema 形式 (`file_name:message_name`) との互換性を維持するため、次のようになります。

* `format_schema_message_name` が指定されていない場合、メッセージ名は従来の `format_schema` の値に含まれる `message_name` 部分から推論されます。
* 従来の形式の使用時に `format_schema_message_name` を指定すると、エラーになります。

<div id="format_schema_source">
  ## format\_schema\_source
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.6"},{"label": "file"},{"label": "新しい設定"}]}]} />

`format_schema` の取得元を定義します。
設定可能な値:

* 'file' (デフォルト) : `format_schema` は、`format_schemas` ディレクトリ内にあるスキーマファイルの名前です。
* 'string': `format_schema` は、スキーマの内容をそのまま記述した文字列です。
* 'query': `format_schema` は、スキーマを取得するためのクエリです。
  `format_schema_source` が 'query' に設定されている場合は、以下の条件が適用されます:
* クエリは、単一の文字列カラムを持つ 1 行、つまり値をちょうど 1 つだけ返す必要があります。
* クエリの結果は、スキーマの内容として扱われます。
* この結果は、`format_schemas` ディレクトリにローカルでキャッシュされます。
* コマンド `SYSTEM DROP FORMAT SCHEMA CACHE FOR Files` を使用して、ローカル cache をクリアできます。
* 一度キャッシュされると、キャッシュが明示的にクリアされるまで、同一のクエリがスキーマ取得のために再度実行されることはありません
* ローカルのキャッシュファイルに加えて、Protobuf メッセージもメモリ内にキャッシュされます。ローカルのキャッシュファイルをクリアした後でも、スキーマを完全に更新するには、`SYSTEM DROP FORMAT SCHEMA CACHE [FOR Protobuf]` を使用してメモリ内キャッシュもクリアする必要があります。
* クエリ `SYSTEM DROP FORMAT SCHEMA CACHE` を実行すると、キャッシュファイルと Protobuf メッセージスキーマの両方のキャッシュを一度にクリアできます。

<div id="format_template_resultset">
  ## format\_template\_resultset
</div>

結果セットのフォーマット文字列を含むファイルへのパス (Templateフォーマット用)

<div id="format_template_resultset_format">
  ## format\_template\_resultset\_format
</div>

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.2"},{"label": ""},{"label": "Template フォーマットの結果セットのフォーマット文字列をクエリ内で設定できるようになりました"}]}]} />

結果セットのフォーマット文字列 (Template フォーマット用)

<div id="format_template_row">
  ## format\_template\_row
</div>

行用のフォーマット文字列が含まれるファイルへのパス (Template フォーマット用)

<div id="format_template_row_format">
  ## format\_template\_row\_format
</div>

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.2"},{"label": ""},{"label": "Template 行フォーマット文字列はクエリで直接設定できます"}]}]} />

行のフォーマット文字列 (Template フォーマット用)

<div id="format_template_rows_between_delimiter">
  ## format\_template\_rows\_between\_delimiter
</div>

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

行と行の間の区切り文字 (Template フォーマット用)

<div id="format_tsv_null_representation">
  ## format\_tsv\_null\_representation
</div>

<SettingsInfoBlock type="String" default_value="\N" />

TSVフォーマットでのカスタムNULL表現

<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 の入力フォーマットの読み取り時に、シーク (または範囲読み取り) を許可します。
有効で、かつソースがこれをサポートしている場合 (たとえば、ローカルファイル、S3、範囲指定をサポートしサイズが判明している HTTP) 、
ClickHouse は必要なバイト範囲だけを読み取り、メモリ使用量を削減できます。
無効な場合、またはソースがシークをサポートしていない場合 (たとえば、ファイルサイズが不明な場合や、ストリームがシーク不可の場合) 、
一部のリーダーでは、ファイル全体をメモリに読み込む動作にフォールバックすることがあります。
デフォルトで有効です。

<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_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 かつ Nullable ではない列の場合、デフォルト値を挿入します

<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": "バイナリ型のデコード時における型ノードの最大数を制御する新しい設定を追加しました。悪意のある入力から保護します。"}]}]} />

バイナリ型のデコード時における型ノードの最大数 (深さではなく総数) 。`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](/ja/reference/data-types/newjson) データ型の値を JSON [String](/ja/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 から Array を読み取る際、要素がネストされた 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フォーマットでのTupleの解釈方法が新たに追加されました。"}]}, {"id": "row-2","items": [{"label": "24.3"},{"label": "1"},{"label": "CSVフォーマットでのTupleの解釈方法が新たに追加されました。"}]}]} />

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_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 フォーマットにおける Tuple の新しい解釈方法が追加されました。"}]}, {"id": "row-2","items": [{"label": "24.3"},{"label": "1"},{"label": "CSV フォーマットにおける Tuple の新しい解釈方法が追加されました。"}]}]} />

入力データ内の引用符付き Tuple を、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 フォーマットのヘッダーを検出"}]}]} />

CustomSeparated フォーマットで名前と型を含むヘッダーを自動的に検出します

<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](/ja/reference/formats/JSON/JSONEachRow) (およびその他の JSON フォーマット) 、[CSV](/ja/reference/formats/CSV/CSV)、[TabSeparated](/ja/reference/formats/TabSeparated/TabSeparated)、[TSKV](/ja/reference/formats/TabSeparated/TSKV)、[Parquet](/ja/reference/formats/Parquet/Parquet)、[Arrow](/ja/reference/formats/Arrow/Arrow)、[Avro](/ja/reference/formats/Avro/Avro)、[ORC](/ja/reference/formats/ORC)、[Native](/ja/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_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 テキストファイルにおけるコレクション (array または map) の要素間の区切り文字

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

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

Hive テキストファイルにおけるフィールド間の区切り文字

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

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

Hive テキストファイルにおける map のキーと値の区切り文字

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

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

ネストされたオブジェクトを含む JSON データの挿入を有効または無効にします。

対応フォーマット:

* [JSONEachRow](/ja/reference/formats/JSON/JSONEachRow)

設定可能な値:

* 0 — 無効。
* 1 — 有効。

関連項目:

* `JSONEachRow` フォーマットでの [Nested 構造の使用](/ja/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": "デフォルトで、名前付きタプルの読み取り時に JSON オブジェクト内の要素が欠けていても許可する"}]}]} />

名前付きタプルのパース時に、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 オブジェクトの名前付きタプルとしてのパースを改善"}]}]} />

名前付きタプルの 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 文字列でも例外がスローされない場合があります"}]}]} />

不要なフィールドを無視し、それらをパースしません。これを有効にすると、形式が無効な 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` のようなエラーを回避できます。

Example:

```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": "新しい設定"}]}]} />

Map型のカラムを、タプルの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" />

名前付きタプル型のカラムを 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 配列を String として読み取れるようにします"}]}]} />

JSON 入力フォーマットで JSON 配列を String としてパースできるようにします。

例:

```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 フォーマットでデフォルトで bool 値を文字列として読み取れるようにしました"}]}]} />

JSON 入力フォーマットで bool 値を文字列としてパースできるようにします。

デフォルトで有効です。

<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 型が Experimental である間、ネストされた JSON オブジェクトを String として読み取れるようにする"}]}]} />

JSON 入力フォーマットで、JSON オブジェクトを String としてパースできるようにします。

例:

```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": "パース エラーの可能性を避けるため、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 オブジェクトから 名前付きタプル を推論する際、曖昧なパスに対して String 型の使用を許可する"}]}]} />

JSON オブジェクトから 名前付きタプル を推論する際、パスが曖昧な場合は例外の代わりに String 型を使用します

<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>
  ストリーミング insert の場合は、`min_insert_block_size_rows=0` と `min_insert_block_size_bytes=0` も設定する必要があります。そうしないと、パース済みのブロックがそれらのしきい値に達するまで、ブロックをまとめる段階で引き続きメモリ内に蓄積され、速やかな insert が妨げられる可能性があります。
</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ダンプ内のテーブル名

<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 input formatでの型変換を許可"}]}]} />

Native input formatでの型変換を許可します

<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 input formatで、型名の代わりにデータ型をバイナリフォーマットで読み取ります

<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 をデフォルト値として挿入できるようにします"}]}]} />

これらのフィールドの Data type が [Nullable](/ja/reference/data-types/nullable) でない場合、[NULL](/ja/reference/syntax#literals) フィールドを[デフォルト値](/ja/reference/statements/create/table#default_values)で初期化する機能を有効または無効にします。
カラムの型が Nullable ではなく、この設定が無効な場合、`NULL` を挿入すると例外が発生します。カラムの型が Nullable の場合は、この設定に関係なく、`NULL` 値はそのまま挿入されます。

この設定は、ほとんどの入力フォーマットに適用されます。

複雑なデフォルト式については、`input_format_defaults_for_omitted_fields` も有効にする必要があります。

設定可能な値:

* 0 — Nullable ではないカラムに `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メタデータ内のWHERE/PREWHERE式、min/max統計、またはブルームフィルターに基づいて、ストライプ全体または行グループ全体をスキップします。

<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 行リーダーで使用するタイムゾーン名です。デフォルトでは GMT が使用されます。"}]}]} />

ORC 行リーダーで使用するタイムゾーン名です。デフォルトでは GMT が使用されます。

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

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

ORCストライプの読み取り時のバッチサイズ。

<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)](/ja/reference/formats/TabSeparated/TabSeparated)、[TSKV](/ja/reference/formats/TabSeparated/TSKV)、[CSV](/ja/reference/formats/CSV/CSV)、[JSONEachRow](/ja/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 file で 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式とブルームフィルタに基づいて、行グループ全体をスキップします。"}]}, {"id": "row-2","items": [{"label": "24.10"},{"label": "0"},{"label": "Parquetファイルの読み取り時に、Parquetメタデータ内のWHERE/PREWHERE式とブルームフィルタに基づいて、行グループ全体をスキップします。"}]}]} />

Parquetファイルの読み取り時に、WHERE式とParquetメタデータ内のブルームフィルタに基づいて、行グループ全体をスキップします。

<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 columns を照合する際に、大文字と小文字を区別しません。

<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 Columnとしてパースします。"}]}]} />

Parquetファイルを読み込む際、JSONカラムをClickHouse JSON Columnとしてパースします。

<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 のパース時に行グループのプリフェッチを有効にします。現在、プリフェッチに対応しているのはシングルスレッドのパースのみです。"}]}]} />

Parquet のパース時に行グループのプリフェッチを有効にします。現在、プリフェッチに対応しているのはシングルスレッドのパースのみです。

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

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

Parquetファイルの読み取り時に、Parquetメタデータ内のWHERE/PREWHERE式および最小値/最大値の統計情報に基づいて、行グループ全体をスキップします。

<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入力フォーマットで、ローカル読み取り (ファイル) 時に、読み飛ばしながら読み込む代わりに 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 の「タイムゾーンなしのローカル時刻」型に対して、より適切な型 DateTime64(..., 'UTC') を使用します。"}]}]} />

isAdjustedToUTC=false の Parquet タイムスタンプに対して、スキーマ推論で使用するデータ型を決定します。true の場合は DateTime64(..., 'UTC')、false の場合は DateTime64(...) です。ClickHouse にはローカルの wall-clock time を表すデータ型がないため、どちらの動作も完全に正しいわけではありません。直感に反しますが、おそらく 'true' のほうがまだ誤りの少ない選択です。これは、'UTC' タイムスタンプを String としてフォーマットすると、正しいローカル時刻の表現が得られるためです。

<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 のおおよそのメモリ上限です。並列に読み取る行グループまたはカラムの数を制限します。1 つのクエリで複数のファイルを読み取る場合、この制限はそれらのファイル全体での総メモリ使用量に適用されます。

<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 fileからのページ読み取り方法に対する軽微な調整です。

<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 wrapper を有効にします。たとえば、String カラム 'str' に対する google.protobuf.StringValue 'str' です。Nullable カラムでは、空の wrapper はデフォルト値として認識され、存在しない場合は 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](/ja/reference/formats/JSON/JSONEachRow) (およびその他の JSON フォーマット)
* [BSONEachRow](/ja/reference/formats/BSONEachRow) (およびその他の JSON フォーマット)
* [TSKV](/ja/reference/formats/TabSeparated/TSKV)
* WithNames/WithNamesAndTypes の接尾辞を持つすべてのフォーマット
* [MySQLDump](/ja/reference/formats/MySQLDump)
* [Native](/ja/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` になります。少なくとも 1 つのフィールドが日付としてパースされなかった場合、結果の型は `String` になります。

デフォルトで有効です。

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

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

有効な場合、ClickHouse はテキストフォーマットのスキーマ推論で、文字列フィールドから `DateTime64` 型を推論しようとします。入力データのあるカラム内のすべてのフィールドを日時として正常に解析できた場合、結果の型は `DateTime64` になります。1 つでも日時として解析できないフィールドがある場合、結果の型は `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 を除く。JSON では指数表記の数値は常に推論されます)

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

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

有効な場合、ClickHouse はテキストフォーマットのスキーマ推論で、浮動小数点数ではなく整数を推論しようとします。入力データのカラム内のすべての数値が整数であれば、結果の型は `Int64` になります。1 つでも浮動小数点数が含まれている場合、結果の型は `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`](/ja/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 を使用して式をパースおよび解釈する際、overflow や精度の問題が発生する可能性を避けるため、リテラルの実際の型を確認します。

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

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

Valuesフォーマットでは、フィールドをストリーミングパーサーでパースできない場合、SQLパーサーを実行して SQL 式のテンプレートを推定し、そのテンプレートを使ってすべての行のパースを試みたうえで、すべての行について式を解釈します。

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

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

Values フォーマットの場合、フィールドをストリーミングパーサーで解析できなければ、SQL パーサーを実行し、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](/ja/reference/formats/CSV/CSVWithNames)
* [CSVWithNamesAndTypes](/ja/reference/formats/CSV/CSVWithNamesAndTypes)
* [TabSeparatedWithNames](/ja/reference/formats/TabSeparated/TabSeparatedWithNames)
* [TabSeparatedWithNamesAndTypes](/ja/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes)
* [JSONCompactEachRowWithNames](/ja/reference/formats/JSON/JSONCompactEachRowWithNames)
* [JSONCompactEachRowWithNamesAndTypes](/ja/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes)
* [JSONCompactStringsEachRowWithNames](/ja/reference/formats/JSON/JSONCompactStringsEachRowWithNames)
* [JSONCompactStringsEachRowWithNamesAndTypes](/ja/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes)
* [RowBinaryWithNames](/ja/reference/formats/RowBinary/RowBinaryWithNames)
* [RowBinaryWithNamesAndTypes](/ja/reference/formats/RowBinary/RowBinaryWithNamesAndTypes)
* [CustomSeparatedWithNames](/ja/reference/formats/CustomSeparated/CustomSeparatedWithNames)
* [CustomSeparatedWithNamesAndTypes](/ja/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](/ja/reference/formats/CSV/CSVWithNamesAndTypes)
* [TabSeparatedWithNamesAndTypes](/ja/reference/formats/TabSeparated/TabSeparatedWithNamesAndTypes)
* [JSONCompactEachRowWithNamesAndTypes](/ja/reference/formats/JSON/JSONCompactEachRowWithNamesAndTypes)
* [JSONCompactStringsEachRowWithNamesAndTypes](/ja/reference/formats/JSON/JSONCompactStringsEachRowWithNamesAndTypes)
* [RowBinaryWithNamesAndTypes](/ja/reference/formats/RowBinary/RowBinaryWithNamesAndTypes)
* [CustomSeparatedWithNamesAndTypes](/ja/reference/formats/CustomSeparated/CustomSeparatedWithNamesAndTypes)

設定可能な値:

* 0 — 無効。
* 1 — 有効。

<div id="insert_distributed_one_random_shard">
  ## insert\_distributed\_one\_random\_shard
</div>

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

distributed key がない場合に、[Distributed](/ja/reference/engines/table-engines/special/distributed) テーブルへの挿入先としてランダムな分片を使用するかどうかを設定します。

既定では、複数の分片を持つ `Distributed` テーブルにデータを挿入する際、distributed key がない場合、ClickHouseサーバーは挿入リクエストを拒否します。`insert_distributed_one_random_shard = 1` に設定すると挿入が許可され、データはすべての分片に対してランダムに振り分けられます。

設定可能な値:

* 0 — 複数の分片があり、distributed key が指定されていない場合、挿入は拒否されます。
* 1 — distributed key が指定されていない場合、利用可能なすべての分片の中からランダムに選ばれた分片に挿入されます。

<div id="interval_output_format">
  ## interval\_output\_format
</div>

<SettingsInfoBlock type="IntervalOutputFormat" default_value="numeric" />

インターバル型のテキスト表現に使用する出力フォーマットを選択できます。

設定可能な値:

* `kusto` - KQL スタイルの出力フォーマット。

  ClickHouse はインターバルを [KQL フォーマット](https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-timespan-format-strings#the-constant-c-format-specifier) で出力します。たとえば、`toIntervalDay(2)` は `2.00:00:00` としてフォーマットされます。なお、長さが一定でないインターバル型 (`IntervalMonth` および `IntervalYear` など) では、インターバルあたりの平均秒数が考慮されます。

* `numeric` - 数値出力フォーマット。

  ClickHouse はインターバルを基になる数値表現のまま出力します。たとえば、`toIntervalDay(2)` は `2` としてフォーマットされます。

関連項目:

* [Interval](/ja/reference/data-types/special-data-types/interval)

<div id="into_outfile_create_parent_directories">
  ## into\_outfile\_create\_parent\_directories
</div>

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

INTO OUTFILE の使用時に親ディレクトリがまだ存在しない場合、自動的に作成します。

<div id="json_type_escape_dots_in_keys">
  ## json\_type\_escape\_dots\_in\_keys
</div>

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

有効にすると、JSONキー内のドットはパース時にエスケープされます。

<div id="max_dynamic_subcolumns_in_json_type_parsing">
  ## max\_dynamic\_subcolumns\_in\_json\_type\_parsing
</div>

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

JSONカラムのパース時に、各カラムで作成可能な動的サブカラムの最大数です。
これにより、データ型で指定された動的パラメータにかかわらず、パース中の動的サブカラム数を制御できます。

<div id="output_format_arrow_compression_method">
  ## output\_format\_arrow\_compression\_method
</div>

<SettingsInfoBlock type="ArrowCompression" default_value="lz4_frame" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.3"},{"label": "lz4_frame"},{"label": "デフォルトで Arrow 出力フォーマットに lz4 圧縮を使用する"}]}]} />

Arrow 出力フォーマットの圧縮方式。対応する codec: lz4\_frame、zstd、none (非圧縮)

<div id="output_format_arrow_date_as_uint16">
  ## output\_format\_arrow\_date\_as\_uint16
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.2"},{"label": "0"},{"label": "デフォルトでは、Date は通常の UInt16 ではなく Arrow DATE32 として書き込まれます。"}]}]} />

Date の値を、32 ビットの Arrow DATE32 型 (読み戻すと Date32) に変換する代わりに、通常の 16 ビット整数 (読み戻すと UInt16) として書き込みます。

<div id="output_format_arrow_fixed_string_as_fixed_byte_array">
  ## output\_format\_arrow\_fixed\_string\_as\_fixed\_byte\_array
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.2"},{"label": "1"},{"label": "デフォルトで FixedString に Arrow FIXED_SIZE_BINARY 型を使用"}]}]} />

FixedString カラムには、Binary ではなく Arrow FIXED\_SIZE\_BINARY 型を使用します。

<div id="output_format_arrow_low_cardinality_as_dictionary">
  ## output\_format\_arrow\_low\_cardinality\_as\_dictionary
</div>

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

LowCardinality 型を出力時に Dictionary Arrow 型として有効にします

<div id="output_format_arrow_string_as_string">
  ## output\_format\_arrow\_string\_as\_string
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "1"},{"label": "ClickHouse では、通常 UTF-8 として扱われる String データ型に任意のバイナリデータを格納できます。Parquet/ORC/Arrow の String は UTF-8 のみをサポートします。そのため、ClickHouse の String データ型に対して Arrow のデータ型として String と Binary のどちらを使うかを選択できます。より正確で互換性が高いのは Binary ですが、デフォルトで String を使用したほうが、多くの場合はユーザーの期待に沿います。"}]}]} />

String カラムには Binary ではなく Arrow String 型を使用する

<div id="output_format_arrow_unsupported_types_as_binary">
  ## output\_format\_arrow\_unsupported\_types\_as\_binary
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.4"},{"label": "1"},{"label": "サポートされていない CH 型を、UNKNOWN_TYPE 例外ではなく Arrow の binary に変換するための新しい設定。"}]}]} />

変換先がない出力型を、生のバイナリデータとして出力します。false の場合、このような型では UNKNOWN\_TYPE 例外が発生します。

<div id="output_format_arrow_use_64_bit_indexes_for_dictionary">
  ## output\_format\_arrow\_use\_64\_bit\_indexes\_for\_dictionary
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.1"},{"label": "0"},{"label": "Arrow形式のDictionaryで64ビットの索引型を使用できるようにする"}]}, {"id": "row-2","items": [{"label": "24.1"},{"label": "0"},{"label": "Arrow形式のDictionaryで64ビットの索引型を使用できるようにする"}]}]} />

Arrow形式のDictionaryの索引には常に64ビット整数を使用します

<div id="output_format_arrow_use_signed_indexes_for_dictionary">
  ## output\_format\_arrow\_use\_signed\_indexes\_for\_dictionary
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.1"},{"label": "1"},{"label": "推奨されているため、デフォルトで Arrowフォーマットの Dictionary に符号付きの索引型を使用します"}]}]} />

Arrowフォーマットの Dictionary の索引には符号付き整数を使用します

<div id="output_format_avro_codec">
  ## output\_format\_avro\_codec
</div>

出力時に使用する圧縮コーデック。設定可能な値: 'null', 'deflate', 'snappy', 'zstd'。

<div id="output_format_avro_confluent_subject">
  ## output\_format\_avro\_confluent\_subject
</div>

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.5"},{"label": ""},{"label": "AvroConfluent 出力の書き込み時に、Confluent スキーマレジストリでスキーマ登録に使用する subject 名を指定する新しい設定。"}]}]} />

AvroConfluent 出力フォーマットの場合: Confluent スキーマレジストリでスキーマが登録される subject 名です。AvroConfluent 出力の書き込み時に必須です。

<div id="output_format_avro_rows_in_file">
  ## output\_format\_avro\_rows\_in\_file
</div>

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

1ファイルあたりの最大行数 (ストレージで許可されている場合)

<div id="output_format_avro_string_column_pattern">
  ## output\_format\_avro\_string\_column\_pattern
</div>

Avroフォーマット: AVRO文字列として選択するStringカラムを指定する正規表現。

<div id="output_format_avro_sync_interval">
  ## output\_format\_avro\_sync\_interval
</div>

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

バイト単位での同期間隔。

<div id="output_format_binary_encode_types_in_binary_format">
  ## output\_format\_binary\_encode\_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="output_format_binary_write_json_as_string">
  ## output\_format\_binary\_write\_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 文字列として出力するための新しい設定を追加"}]}]} />

[JSON](/ja/reference/data-types/newjson)データ型の値を、RowBinary出力フォーマットで JSON [String](/ja/reference/data-types/string) 値として出力します。

<div id="output_format_bson_string_as_string">
  ## output\_format\_bson\_string\_as\_string
</div>

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

String 型のカラムには、Binary ではなく BSON String 型を使用します。

<div id="output_format_compression_level">
  ## output\_format\_compression\_level
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.1"},{"label": "3"},{"label": "クエリ出力の圧縮レベルを変更できるようになりました"}]}]} />

クエリ出力が圧縮される場合のデフォルトの圧縮レベルです。この設定は、`SELECT` クエリで `INTO OUTFILE` を使用する場合、またはテーブル関数 `file`、`url`、`hdfs`、`s3`、`azureBlobStorage` に書き込む場合に適用されます。

設定可能な値: `1` から `22`

<div id="output_format_compression_zstd_window_log">
  ## output\_format\_compression\_zstd\_window\_log
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.1"},{"label": "0"},{"label": "zstd 圧縮使用時に、クエリ出力の zstd window log を変更できるようにする"}]}]} />

出力の圧縮方式が `zstd` の場合に使用できます。`0` より大きい場合、この設定は圧縮ウィンドウサイズ (`2` のべき乗) を明示的に設定し、zstd 圧縮の long-range モードを有効にします。これにより、より高い圧縮率を得られる場合があります。

設定可能な値: 0 以上の数値。値が小さすぎるか大きすぎる場合、`zstdlib` は例外をスローします。一般的な値は `20` (ウィンドウサイズ = `1MB`) から `30` (ウィンドウサイズ = `1GB`) です。

<div id="output_format_csv_crlf_end_of_line">
  ## output\_format\_csv\_crlf\_end\_of\_line
</div>

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

true に設定すると、CSVフォーマットの行末は \n ではなく \r\n になります。

<div id="output_format_csv_serialize_tuple_into_separate_columns">
  ## output\_format\_csv\_serialize\_tuple\_into\_separate\_columns
</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フォーマットのタプルは個別のカラムとしてシリアライズされます (つまり、タプル内のネストは失われます)

<div id="output_format_decimal_trailing_zeros">
  ## output\_format\_decimal\_trailing\_zeros
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "21.9"},{"label": "0"},{"label": "見栄えのよい出力にするため、デフォルトでは Decimal 型のテキスト表現で末尾のゼロを出力しません"}]}]} />

Decimal 値を出力する際に、末尾のゼロも出力します。例: `1.23` ではなく `1.230000`。

デフォルトでは無効です。

<div id="output_format_json_array_of_rows">
  ## output\_format\_json\_array\_of\_rows
</div>

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

[JSONEachRow](/ja/reference/formats/JSON/JSONEachRow) フォーマットで、すべての行を JSON 配列として出力する機能を有効にします。

設定可能な値:

* 1 — ClickHouse は、すべての行を配列として出力し、各行は `JSONEachRow` フォーマットになります。
* 0 — ClickHouse は、各行を `JSONEachRow` フォーマットで個別に出力します。

**この設定を有効にしたクエリの例**

クエリ:

```sql theme={null}
SET output_format_json_array_of_rows = 1;
SELECT number FROM numbers(3) FORMAT JSONEachRow;
```

結果:

```text theme={null}
[
{"number":"0"},
{"number":"1"},
{"number":"2"}
]
```

**設定を無効にしたクエリの例**

クエリ:

```sql theme={null}
SET output_format_json_array_of_rows = 0;
SELECT number FROM numbers(3) FORMAT JSONEachRow;
```

結果:

```text theme={null}
{"number":"0"}
{"number":"1"}
{"number":"2"}
```

<div id="output_format_json_escape_forward_slashes">
  ## output\_format\_json\_escape\_forward\_slashes
</div>

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

JSON出力フォーマットで文字列を出力する際に、スラッシュをエスケープするかどうかを制御します。これは JavaScript との互換性のための設定です。常にエスケープされるバックスラッシュと混同しないでください。

デフォルトで有効です。

<div id="output_format_json_map_as_array_of_tuples">
  ## output\_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": "新しい設定"}]}]} />

Map型のカラムを、タプルのJSON配列としてシリアライズします。

デフォルトでは無効です。

<div id="output_format_json_named_tuples_as_objects">
  ## output\_format\_json\_named\_tuples\_as\_objects
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "22.6"},{"label": "1"},{"label": "デフォルトで、名前付きタプル を JSON フォーマットの JSON オブジェクトとしてシリアライズできるようになりました"}]}]} />

名前付きタプル のカラムを JSON オブジェクトとしてシリアライズします。

デフォルトで有効です。

<div id="output_format_json_pretty_print">
  ## output\_format\_json\_pretty\_print
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "1"},{"label": "デフォルトで、JSON 出力フォーマットでは値を見やすい形式で表示します"}]}]} />

この設定は、JSON 出力フォーマットの使用時に、`data` 配列内の Tuples、Maps、Arrays などのネストされた構造をどのように表示するかを制御します。

たとえば、次のように出力する代わりに:

```json theme={null}
"data":
[
  {
    "tuple": {"a":1,"b":2,"c":3},
    "array": [1,2,3],
    "map": {"a":1,"b":2,"c":3}
  }
],
```

出力は次のようにフォーマットされます。

```json theme={null}
"data":
[
    {
        "tuple": {
            "a": 1,
            "b": 2,
            "c": 3
        },
        "array": [
            1,
            2,
            3
        ],
        "map": {
            "a": 1,
            "b": 2,
            "c": 3
        }
    }
],
```

デフォルトで有効です。

<div id="output_format_json_quote_64bit_floats">
  ## output\_format\_json\_quote\_64bit\_floats
</div>

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

JSON\* フォーマットで出力する際に、64 ビットの [floats](/ja/reference/data-types/float) を引用符で囲むかどうかを制御します。

デフォルトでは無効です。

<div id="output_format_json_quote_64bit_integers">
  ## output\_format\_json\_quote\_64bit\_integers
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "0"},{"label": "デフォルトで JSON 内の 64 ビット整数の引用符付けを無効化"}]}]} />

[JSON](/ja/reference/formats/JSON/JSON)フォーマットで出力する際に、64 ビット以上の[整数](/ja/reference/data-types/int-uint) (`UInt64` や `Int128` など) を引用符で囲むかどうかを制御します。
このような整数は、デフォルトで引用符で囲まれます。この動作は、ほとんどの JavaScript 実装と互換性があります。

設定可能な値:

* 0 — 整数は引用符なしで出力されます。
* 1 — 整数は引用符で囲まれて出力されます。

<div id="output_format_json_quote_decimals">
  ## output\_format\_json\_quote\_decimals
</div>

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

JSON出力フォーマットで Decimal 値を引用符で囲むかどうかを制御します。

デフォルトでは無効です。

<div id="output_format_json_quote_denormals">
  ## output\_format\_json\_quote\_denormals
</div>

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

[JSON](/ja/reference/formats/JSON/JSON) 出力フォーマットで `+nan`、`-nan`、`+inf`、`-inf` を出力できるようにします。

設定可能な値:

* 0 — 無効。
* 1 — 有効。

**例**

次の `account_orders` テーブルについて考えます。

```text theme={null}
┌─id─┬─name───┬─duration─┬─period─┬─area─┐
│  1 │ Andrew │       20 │      0 │  400 │
│  2 │ John   │       40 │      0 │    0 │
│  3 │ Bob    │       15 │      0 │ -100 │
└────┴────────┴──────────┴────────┴──────┘
```

`output_format_json_quote_denormals = 0` の場合、クエリの出力では `null` 値が返されます:

```sql theme={null}
SELECT area/period FROM account_orders FORMAT JSON;
```

```json theme={null}
{
        "meta":
        [
                {
                        "name": "divide(area, period)",
                        "type": "Float64"
                }
        ],

        "data":
        [
                {
                        "divide(area, period)": null
                },
                {
                        "divide(area, period)": null
                },
                {
                        "divide(area, period)": null
                }
        ],

        "rows": 3,

        "statistics":
        {
                "elapsed": 0.003648093,
                "rows_read": 3,
                "bytes_read": 24
        }
}
```

`output_format_json_quote_denormals = 1` の場合、クエリは次の結果を返します。

```json theme={null}
{
        "meta":
        [
                {
                        "name": "divide(area, period)",
                        "type": "Float64"
                }
        ],

        "data":
        [
                {
                        "divide(area, period)": "inf"
                },
                {
                        "divide(area, period)": "-nan"
                },
                {
                        "divide(area, period)": "-inf"
                }
        ],

        "rows": 3,

        "statistics":
        {
                "elapsed": 0.000070241,
                "rows_read": 3,
                "bytes_read": 24
        }
}
```

<div id="output_format_json_skip_null_value_in_named_tuples">
  ## output\_format\_json\_skip\_null\_value\_in\_named\_tuples
</div>

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

名前付きタプルのカラムを JSON オブジェクトとしてシリアライズする際に、NULL 値を持つキーと値のペアをスキップします。これは、output\_format\_json\_named\_tuples\_as\_objects が true の場合にのみ有効です。

<div id="output_format_json_validate_utf8">
  ## output\_format\_json\_validate\_utf8
</div>

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

JSON 出力フォーマットにおける UTF-8 シーケンスの検証を制御します。JSON/JSONCompact/JSONColumnsWithMetadata フォーマットには影響せず、これらは常に UTF-8 を検証します。

デフォルトでは無効です。

<div id="output_format_markdown_escape_special_characters">
  ## output\_format\_markdown\_escape\_special\_characters
</div>

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

有効にすると、Markdown 内の特殊文字をエスケープします。

[Common Mark](https://spec.commonmark.org/0.30/#example-12) では、次の特殊文字を でエスケープできるものとして定義しています。

```
! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~
```

設定可能な値:

* 0 — 無効。
* 1 — 有効。

<div id="output_format_msgpack_uuid_representation">
  ## output\_format\_msgpack\_uuid\_representation
</div>

<SettingsInfoBlock type="MsgPackUUIDRepresentation" default_value="ext" />

MsgPackフォーマットでUUIDを出力する際の形式。

<div id="output_format_native_encode_types_in_binary_format">
  ## output\_format\_native\_encode\_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="output_format_native_use_flattened_dynamic_and_json_serialization">
  ## output\_format\_native\_use\_flattened\_dynamic\_and\_json\_serialization
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.6"},{"label": "0"},{"label": "Native format にフラット化された Dynamic/JSON シリアライゼーションを追加"}]}]} />

[JSON](/ja/reference/data-types/newjson) および [Dynamic](/ja/reference/data-types/dynamic) カラムのデータを、フラット化されたフォーマットですべての型/パスを個別のサブカラムとして書き込みます。

<div id="output_format_native_write_json_as_string">
  ## output\_format\_native\_write\_json\_as\_string
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.10"},{"label": "0"},{"label": "JSONカラムをNative 出力フォーマットで単一のStringカラムとして書き込めるようにする新しい設定を追加"}]}]} />

デフォルトのネイティブJSONシリアライゼーションの代わりに、[JSON](/ja/reference/data-types/newjson)カラムのデータを、JSON文字列を含む単一の[String](/ja/reference/data-types/string)カラムとしてNative 出力フォーマットで書き込みます。

<div id="output_format_orc_compression_block_size">
  ## output\_format\_orc\_compression\_block\_size
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "262144"},{"label": "新しい設定"}]}]} />

ORC出力フォーマットの圧縮ブロックサイズ (バイト単位) 。

<div id="output_format_orc_compression_method">
  ## output\_format\_orc\_compression\_method
</div>

<SettingsInfoBlock type="ORCCompression" default_value="zstd" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "zstd"},{"label": "Parquet/ORC/Arrow は、lz4 や zstd を含む多くの圧縮方式をサポートしています。ClickHouse はこれらすべての圧縮方式をサポートしています。一方、'duckdb' のような機能の劣るツールには、より高速な `lz4` 圧縮方式をサポートしていないものがあります。そのため、デフォルトでは zstd を設定しています。"}]}, {"id": "row-2","items": [{"label": "23.3"},{"label": "lz4_frame"},{"label": "デフォルトで ORC 出力フォーマットに lz4 圧縮を使用"}]}]} />

ORC 出力フォーマットの圧縮方式。サポートされているコーデック: lz4, snappy, zlib, zstd, none (非圧縮)

<div id="output_format_orc_dictionary_key_size_threshold">
  ## output\_format\_orc\_dictionary\_key\_size\_threshold
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.9"},{"label": "0"},{"label": "ORC出力フォーマットの文字列カラムで、一意な値の数が NULL でない行の総数に対するこの割合を超える場合は、Dictionary エンコーディングを無効にします。それ以外の場合は、Dictionary エンコーディングが有効になります"}]}]} />

ORC出力フォーマットの文字列カラムで、一意な値の数が NULL でない行の総数に対するこの割合を超える場合は、Dictionary エンコーディングを無効にします。それ以外の場合は、Dictionary エンコーディングが有効になります

<div id="output_format_orc_row_index_stride">
  ## output\_format\_orc\_row\_index\_stride
</div>

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

ORC出力フォーマットにおける目標行索引ストライド

<div id="output_format_orc_string_as_string">
  ## output\_format\_orc\_string\_as\_string
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "1"},{"label": "ClickHouse では、通常 UTF-8 として扱われる String データ型に任意のバイナリデータを格納できます。一方、Parquet/ORC/Arrow の String は UTF-8 のみをサポートします。そのため、ClickHouse の String データ型に対応させる Arrow のデータ型として、String と Binary のどちらを使うかを選択できます。より正確で互換性が高いのは Binary ですが、既定では String を使用するほうが、多くの場合ユーザーの期待に沿います。"}]}]} />

String カラムでは、Binary ではなく ORC の String 型を使用します

<div id="output_format_orc_writer_time_zone_name">
  ## output\_format\_orc\_writer\_time\_zone\_name
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "GMT"},{"label": "ORCライターのタイムゾーン名です。デフォルトの ORCライターのタイムゾーンは GMT です。"}]}]} />

ORCライターのタイムゾーン名です。デフォルトの ORCライターのタイムゾーンは GMT です。

<div id="output_format_parallel_formatting">
  ## output\_format\_parallel\_formatting
</div>

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

データのフォーマット処理を並列化するかどうかを有効または無効にします。[TSV](/ja/reference/formats/TabSeparated/TabSeparated)、[TSKV](/ja/reference/formats/TabSeparated/TSKV)、[CSV](/ja/reference/formats/CSV/CSV)、[JSONEachRow](/ja/reference/formats/JSON/JSONEachRow) フォーマットでのみサポートされています。

設定可能な値:

* 1 — 有効。
* 0 — 無効。

<div id="output_format_parquet_batch_size">
  ## output\_format\_parquet\_batch\_size
</div>

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

この行数ごとにページサイズを確認します。平均的な値のサイズが数 KB を超えるカラムがある場合は、この値を小さくすることを検討してください。

<div id="output_format_parquet_bloom_filter_bits_per_value">
  ## output\_format\_parquet\_bloom\_filter\_bits\_per\_value
</div>

<SettingsInfoBlock type="Double" default_value="10.5" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.2"},{"label": "10.5"},{"label": "新しい設定"}]}]} />

Parquet ブルームフィルタで、個別の値ごとに使用するビット数のおおよその値です。推定される偽陽性率は次のとおりです。

* 6   ビット - 10%
* 10.5 ビット -  1%
* 16.9 ビット -  0.1%
* 26.4 ビット -  0.01%
* 41   ビット -  0.001%

<div id="output_format_parquet_bloom_filter_flush_threshold_bytes">
  ## output\_format\_parquet\_bloom\_filter\_flush\_threshold\_bytes
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.2"},{"label": "134217728"},{"label": "新しい設定"}]}]} />

Parquetファイル内でブルームフィルタをどこに配置するかを指定します。ブルームフィルタは、およそこのサイズごとにまとめて書き込まれます。具体的には次のとおりです。

* 0 の場合、各行グループのブルームフィルタは、その行グループの直後にただちに書き込まれます。
  * すべてのブルームフィルタの合計サイズより大きい場合、すべての行グループのブルームフィルタがメモリ上に蓄積され、その後ファイル末尾付近にまとめて書き込まれます。
  * それ以外の場合、ブルームフィルタはメモリ上に蓄積され、合計サイズがこの値を超えるたびに書き出されます。

<div id="output_format_parquet_compression_method">
  ## output\_format\_parquet\_compression\_method
</div>

<SettingsInfoBlock type="ParquetCompression" default_value="zstd" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "zstd"},{"label": "Parquet/ORC/Arrow は、lz4 や zstd を含む多くの圧縮方式をサポートしています。ClickHouse はこれらすべての圧縮方式をサポートしています。`duckdb` のような一部の機能が限定的なツールは、より高速な `lz4` 圧縮方式に対応していないため、デフォルトは zstd に設定されています。"}]}, {"id": "row-2","items": [{"label": "23.3"},{"label": "lz4"},{"label": "Parquet 出力フォーマットでは、デフォルトで lz4 圧縮を使用します"}]}]} />

Parquet 出力フォーマットの圧縮方式。対応している codec: snappy, lz4, brotli, zstd, gzip, none (非圧縮)

<div id="output_format_parquet_data_page_size">
  ## output\_format\_parquet\_data\_page\_size
</div>

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

圧縮前の目標ページサイズ (バイト単位) 。

<div id="output_format_parquet_date_as_uint16">
  ## output\_format\_parquet\_date\_as\_uint16
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "0"},{"label": "24.12 で導入された軽微な互換性破壊変更に対応するための互換設定を追加しました。"}]}, {"id": "row-2","items": [{"label": "24.12"},{"label": "0"},{"label": "Date を単純な UInt16 ではなく Date32 として書き込みます（これらは Date に最も近い 2 つの Parquet 型です）。"}]}]} />

Date の値を 32 ビットの Parquet DATE 型に変換して書き込む (読み戻すと Date32) 代わりに、単純な 16 ビット数値として書き込みます (読み戻すと UInt16) 。

<div id="output_format_parquet_datetime_as_uint32">
  ## output\_format\_parquet\_datetime\_as\_uint32
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.12"},{"label": "0"},{"label": "DateTime を UInt32 ではなく DateTime64(3) として書き込みます（Parquet では、この 2 つの型が DateTime に最も近いためです）。"}]}]} />

DateTime の値をミリ秒に変換せず、生の Unix timestamp として書き込みます (読み戻すと UInt32 として扱われます) 。

<div id="output_format_parquet_enum_as_byte_array">
  ## output\_format\_parquet\_enum\_as\_byte\_array
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "1"},{"label": "デフォルトで Enum を Parquet の byte array として書き込むようにします"}]}, {"id": "row-2","items": [{"label": "25.7"},{"label": "0"},{"label": "Enum を Parquet の物理型 BYTE_ARRAY、論理型 ENUM を使用して書き込みます"}]}]} />

Enum を Parquet の物理型 BYTE\_ARRAY、論理型 ENUM を使用して書き込みます

<div id="output_format_parquet_fixed_string_as_fixed_byte_array">
  ## output\_format\_parquet\_fixed\_string\_as\_fixed\_byte\_array
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "23.2"},{"label": "1"},{"label": "デフォルトで FixedString に Parquet FIXED_LENGTH_BYTE_ARRAY 型を使用"}]}]} />

FixedString カラムには、Binary の代わりに Parquet FIXED\_LEN\_BYTE\_ARRAY 型を使用します。

<div id="output_format_parquet_geometadata">
  ## output\_format\_parquet\_geometadata
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.7"},{"label": "1"},{"label": "Geoカラムに関する情報をParquetメタデータに書き込み、カラムをWKB形式でエンコードできるようにする新しい設定。"}]}]} />

Geoカラムに関する情報をParquetメタデータに書き込み、カラムをWKB形式でエンコードできるようにします。

<div id="output_format_parquet_max_dictionary_size">
  ## output\_format\_parquet\_max\_dictionary\_size
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "1048576"},{"label": "新しい設定"}]}]} />

Dictionary のサイズがこのバイト数を超えると、Dictionary を使用しないエンコーディングに切り替わります。Dictionary エンコーディングを無効にするには、0 に設定してください。

<div id="output_format_parquet_parallel_encoding">
  ## output\_format\_parquet\_parallel\_encoding
</div>

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

Parquet のエンコードを複数スレッドで行います。

<div id="output_format_parquet_row_group_size">
  ## output\_format\_parquet\_row\_group\_size
</div>

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

目標とする行グループのサイズ (行数) 。

<div id="output_format_parquet_row_group_size_bytes">
  ## output\_format\_parquet\_row\_group\_size\_bytes
</div>

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

圧縮前の行グループの目標サイズ (バイト単位) 。

<div id="output_format_parquet_string_as_string">
  ## output\_format\_parquet\_string\_as\_string
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "1"},{"label": "ClickHouse では、通常 UTF-8 として扱われる String データ型に任意のバイナリデータを格納できます。一方、Parquet/ORC/Arrow の String は UTF-8 のみをサポートします。そのため、ClickHouse の String データ型に対して Arrow のどのデータ型を使うかを、String と Binary から選択できます。より正確で互換性が高いのは Binary ですが、多くの場合はデフォルトで String を使うほうがユーザーの期待に沿います。"}]}]} />

String カラムには、Binary ではなく Parquet の String 型を使用します。

<div id="output_format_parquet_write_bloom_filter">
  ## output\_format\_parquet\_write\_bloom\_filter
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.2"},{"label": "1"},{"label": "Parquet ブルームフィルタの書き込みをサポートしました。"}]}]} />

Parquet ファイルにブルームフィルタを書き込みます。

<div id="output_format_parquet_write_checksums">
  ## output\_format\_parquet\_write\_checksums
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.11"},{"label": "1"},{"label": "新しい設定"}]}]} />

Parquet のページヘッダーに crc32 チェックサムを書き込みます。

<div id="output_format_parquet_write_page_index">
  ## output\_format\_parquet\_write\_page\_index
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.7"},{"label": "1"},{"label": "Parquetファイルにページ索引を書き込めるようになりました。"}]}]} />

Parquetファイルにカラム索引とオフセット索引 (つまり各データページの統計情報で、読み取り時の filter pushdown に利用されることがあります) を書き込みます。

<div id="output_format_pretty_color">
  ## output\_format\_pretty\_color
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.1"},{"label": "auto"},{"label": "設定が変更され、auto 値も指定できるようになりました。出力先が tty でない場合は ANSI エスケープが無効になります"}]}]} />

Pretty フォーマットで ANSI エスケープシーケンスを使用します。0 - 無効、1 - 有効、'auto' - 出力先が端末の場合に有効。

<div id="output_format_pretty_display_footer_column_names">
  ## output\_format\_pretty\_display\_footer\_column\_names
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "1"},{"label": "テーブルの行数が多い場合にフッターへカラム名を表示する設定が追加されました。しきい値は output_format_pretty_display_footer_column_names_min_rows で制御されます。"}]}]} />

テーブルの行数が多い場合に、フッターへカラム名を表示します。

設定可能な値:

* 0 — フッターにはカラム名は表示されません。
* 1 — 行数が [output\_format\_pretty\_display\_footer\_column\_names\_min\_rows](#output_format_pretty_display_footer_column_names_min_rows) で設定されたしきい値以上の場合、フッターにカラム名が表示されます (デフォルトは 50) 。

**例**

クエリ:

```sql theme={null}
SELECT *, toTypeName(*) FROM (SELECT * FROM system.numbers LIMIT 1000);
```

結果:

```response theme={null}
      ┌─number─┬─toTypeName(number)─┐
   1. │      0 │ UInt64             │
   2. │      1 │ UInt64             │
   3. │      2 │ UInt64             │
   ...
 999. │    998 │ UInt64             │
1000. │    999 │ UInt64             │
      └─number─┴─toTypeName(number)─┘
```

<div id="output_format_pretty_display_footer_column_names_min_rows">
  ## output\_format\_pretty\_display\_footer\_column\_names\_min\_rows
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "50"},{"label": "output_format_pretty_display_footer_column_names_min_rows のしきい値を制御する設定が追加されました。デフォルト値は 50 です。"}]}]} />

設定 [output\_format\_pretty\_display\_footer\_column\_names](#output_format_pretty_display_footer_column_names) が有効な場合に、カラム名を含むフッターを表示する行数の最小値を設定します。

<div id="output_format_pretty_fallback_to_vertical">
  ## output\_format\_pretty\_fallback\_to\_vertical
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "1"},{"label": "新しい設定"}]}]} />

有効な場合、テーブルの幅が広く行数が少ないと、Pretty フォーマットは Vertical フォーマットと同様の形式で出力します。
この動作の詳細な調整については、`output_format_pretty_fallback_to_vertical_max_rows_per_chunk` および `output_format_pretty_fallback_to_vertical_min_table_width` を参照してください。

<div id="output_format_pretty_fallback_to_vertical_max_rows_per_chunk">
  ## output\_format\_pretty\_fallback\_to\_vertical\_max\_rows\_per\_chunk
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "100"},{"label": "新しい設定"}]}]} />

Vertical フォーマット へのフォールバック (`output_format_pretty_fallback_to_vertical` を参照) は、chunk 内のレコード数が指定値以下の場合にのみ有効になります。

<div id="output_format_pretty_fallback_to_vertical_min_columns">
  ## output\_format\_pretty\_fallback\_to\_vertical\_min\_columns
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "5"},{"label": "新しい設定"}]}]} />

Verticalフォーマットへのフォールバック (`output_format_pretty_fallback_to_vertical` を参照) は、カラム数が指定した値を超える場合にのみ有効になります。

<div id="output_format_pretty_fallback_to_vertical_min_table_width">
  ## output\_format\_pretty\_fallback\_to\_vertical\_min\_table\_width
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "250"},{"label": "新しい設定"}]}]} />

Vertical フォーマット へのフォールバック (`output_format_pretty_fallback_to_vertical`を参照) は、テーブル内のカラムの長さの合計が指定した値以上である場合、またはいずれかの値に改行文字が含まれている場合にのみ有効になります。

<div id="output_format_pretty_glue_chunks">
  ## output\_format\_pretty\_glue\_chunks
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "auto"},{"label": "Prettyフォーマットをより見やすくするための新しい設定。"}]}]} />

Prettyフォーマットで表示されるデータが複数のchunkに分かれて到着した場合、遅れて到着した場合でも、次のchunkのカラム幅が前のchunkと同じであれば、ANSIエスケープシーケンスを使用して前の行に戻り、前のchunkのフッターを上書きして新しいchunkのデータを続けて表示します。これにより、結果がより見やすくなります。

0 - 無効、1 - 有効、'auto' - 端末の場合は有効。

<div id="output_format_pretty_grid_charset">
  ## output\_format\_pretty\_grid\_charset
</div>

<SettingsInfoBlock type="String" default_value="UTF-8" />

グリッドの枠線を出力する文字セット。使用できる文字セット: ASCII、UTF-8 (デフォルト) 。

<div id="output_format_pretty_highlight_digit_groups">
  ## output\_format\_pretty\_highlight\_digit\_groups
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "1"},{"label": "有効で、かつ出力先がターミナルである場合、千、百万などの単位に当たる桁ごとに下線で強調表示します。"}]}]} />

有効で、かつ出力先がターミナルである場合、千、百万などの単位に当たる桁ごとに下線で強調表示します。

<div id="output_format_pretty_highlight_trailing_spaces">
  ## output\_format\_pretty\_highlight\_trailing\_spaces
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "1"},{"label": "新しい設定。"}]}]} />

有効で、出力先がターミナルの場合、末尾のスペースを灰色で下線付きにして強調表示します。

<div id="output_format_pretty_max_column_name_width_cut_to">
  ## output\_format\_pretty\_max\_column\_name\_width\_cut\_to
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "24"},{"label": "新しい設定"}]}]} />

カラム名が長すぎる場合は、この長さに切り詰めます。
カラム名の長さが `output_format_pretty_max_column_name_width_cut_to` と `output_format_pretty_max_column_name_width_min_chars_to_cut` の合計を超える場合に、切り詰められます。

<div id="output_format_pretty_max_column_name_width_min_chars_to_cut">
  ## output\_format\_pretty\_max\_column\_name\_width\_min\_chars\_to\_cut
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "4"},{"label": "新しい設定"}]}]} />

カラム名が長すぎる場合に切り詰める最小文字数。
カラム名の長さが `output_format_pretty_max_column_name_width_cut_to` に `output_format_pretty_max_column_name_width_min_chars_to_cut` を加えた値を超えると、切り詰められます。

<div id="output_format_pretty_max_column_pad_width">
  ## output\_format\_pretty\_max\_column\_pad\_width
</div>

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

Pretty フォーマットで、カラム内のすべての値に追加するパディングの最大幅。

<div id="output_format_pretty_max_rows">
  ## output\_format\_pretty\_max\_rows
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.2"},{"label": "1000"},{"label": "使い勝手が向上します。スクロール量が少なくて済むためです。"}]}]} />

Pretty フォーマットの行数上限。

<div id="output_format_pretty_max_value_width">
  ## output\_format\_pretty\_max\_value\_width
</div>

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

Pretty フォーマットで表示される値の最大幅です。これを超える場合は切り詰められます。
値が 0 の場合は、切り詰められません。

<div id="output_format_pretty_max_value_width_apply_for_single_value">
  ## output\_format\_pretty\_max\_value\_width\_apply\_for\_single\_value
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "0"},{"label": "Prettyフォーマットで単一の値は切り詰められません。"}]}]} />

値を切り詰める (`output_format_pretty_max_value_width` 設定を参照) のは、block 内の単一の値でない場合のみです。それ以外の場合は値全体を出力します。これは `SHOW CREATE TABLE` クエリで便利です。

<div id="output_format_pretty_multiline_fields">
  ## output\_format\_pretty\_multiline\_fields
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "1"},{"label": "新しい設定"}]}]} />

有効にすると、Prettyフォーマットでは複数行のフィールドがテーブルのセル内に収まるように表示され、テーブルの外枠が維持されます。
無効の場合はそのまま表示されるため、テーブルのレイアウトが崩れる可能性があります (無効のままにしておく利点の 1 つは、複数行の値をコピー＆ペーストしやすいことです) 。

<div id="output_format_pretty_named_tuples_as_json">
  ## output\_format\_pretty\_named\_tuples\_as\_json
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.12"},{"label": "1"},{"label": "Pretty フォーマットで名前付きタプルを JSON オブジェクトとして出力するかどうかを制御する新しい設定"}]}]} />

Pretty フォーマットで名前付きタプルを整形済みの JSON オブジェクトとして出力するかどうかを制御します。

<div id="output_format_pretty_row_numbers">
  ## output\_format\_pretty\_row\_numbers
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "1"},{"label": "使い勝手が向上します。"}]}]} />

Pretty 出力フォーマットで各行の前に行番号を追加します

<div id="output_format_pretty_single_large_number_tip_threshold">
  ## output\_format\_pretty\_single\_large\_number\_tip\_threshold
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.2"},{"label": "1000000"},{"label": "ブロックがこの値を超える単一の数値（0 を除く）のみで構成されている場合、テーブルの右側に見やすい数値のヒントを表示します"}]}]} />

ブロックがこの値を超える単一の数値 (0 を除く) のみで構成されている場合、テーブルの右側に見やすい数値のヒントを表示します

<div id="output_format_pretty_squash_consecutive_ms">
  ## output\_format\_pretty\_squash\_consecutive\_ms
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "50"},{"label": "新しい設定を追加"}]}]} />

指定したミリ秒数のあいだ次のブロックを待ち、書き込む前に前のブロックにまとめます。
これにより、非常に小さいブロックが頻繁に出力されるのを防ぎつつ、ストリーミング形式でデータを表示できます。

<div id="output_format_pretty_squash_max_wait_ms">
  ## output\_format\_pretty\_squash\_max\_wait\_ms
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "1000"},{"label": "新しい設定を追加"}]}]} />

前回の出力から指定したミリ秒数以上が経過した場合、Pretty フォーマットで保留中のブロックを出力します。

<div id="output_format_protobuf_nullables_with_google_wrappers">
  ## output\_format\_protobuf\_nullables\_with\_google\_wrappers
</div>

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

Google ラッパーを使用して Nullable カラムをシリアライズする場合、デフォルト値は空のラッパーとしてシリアライズされます。無効になっている場合、デフォルト値と NULL 値はシリアライズされません

<div id="output_format_schema">
  ## output\_format\_schema
</div>

自動生成されたスキーマを [Cap'n Proto](/ja/reference/formats/CapnProto) または [Protobuf](/ja/reference/formats/Protobuf/Protobuf) フォーマットで保存するファイルのパス。

<div id="output_format_sql_insert_include_column_names">
  ## output\_format\_sql\_insert\_include\_column\_names
</div>

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

INSERT クエリにカラム名を含めます

<div id="output_format_sql_insert_max_batch_size">
  ## output\_format\_sql\_insert\_max\_batch\_size
</div>

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

1つのINSERTステートメントに含められる最大の行数です。

<div id="output_format_sql_insert_quote_names">
  ## output\_format\_sql\_insert\_quote\_names
</div>

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

カラム名を '\`' 文字でクォートします

<div id="output_format_sql_insert_table_name">
  ## output\_format\_sql\_insert\_table\_name
</div>

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

出力される INSERT クエリで使用されるテーブル名

<div id="output_format_sql_insert_use_replace">
  ## output\_format\_sql\_insert\_use\_replace
</div>

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

INSERT の代わりに REPLACE ステートメントを使用します

<div id="output_format_trim_fixed_string">
  ## output\_format\_trim\_fixed\_string
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.3"},{"label": "0"},{"label": "テキスト出力フォーマットで FixedString の値の末尾にあるゼロバイトを削除する新しい設定"}]}]} />

テキスト出力フォーマットで、FixedString の値の末尾にあるヌルバイトを削除します。たとえば、`toFixedString('John', 8)` は `John\0\0\0\0` ではなく `John` として出力されます。

<div id="output_format_tsv_crlf_end_of_line">
  ## output\_format\_tsv\_crlf\_end\_of\_line
</div>

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

true に設定すると、TSV フォーマットの行末は \n ではなく \r\n になります。

<div id="output_format_values_escape_quote_with_quote">
  ## output\_format\_values\_escape\_quote\_with\_quote
</div>

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.2"},{"label": "0"},{"label": "true の場合は ' を '' としてエスケープし、それ以外は \\' で囲みます"}]}]} />

true の場合は ' を '' としてエスケープし、それ以外は \\' で囲みます

<div id="output_format_write_statistics">
  ## output\_format\_write\_statistics
</div>

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

適切な出力フォーマットで、読み取った行数、バイト数、経過時間に関する統計を書き込みます。

デフォルトで有効

<div id="precise_float_parsing">
  ## precise\_float\_parsing
</div>

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

より正確な (ただし低速な) 浮動小数点数のパースアルゴリズムを優先します

<div id="schema_inference_hints">
  ## schema\_inference\_hints
</div>

スキーマのないフォーマットでスキーマ推論を行う際に、ヒントとして使用するカラム名と型の一覧です。

例:

クエリ:

```sql theme={null}
desc format(JSONEachRow, '{"x" : 1, "y" : "String", "z" : "0.0.0.0" }') settings schema_inference_hints='x UInt8, z IPv4';
```

結果:

```sql theme={null}
x   UInt8
y   Nullable(String)
z   IPv4
```

<Note>
  `schema_inference_hints` の形式が正しくない場合や、タイプミスや誤ったデータ型などが含まれている場合は、schema\_inference\_hints 全体が無視されます。
</Note>

<div id="schema_inference_make_columns_nullable">
  ## schema\_inference\_make\_columns\_nullable
</div>

<SettingsInfoBlock type="UInt64Auto" default_value="3" />

スキーマ推論で、推論された型を `Nullable` にするかどうかを制御します。
設定可能な値:

* 0 - 推論された型は `Nullable` になりません (この場合に NULL 値をどう扱うかは input\_format\_null\_as\_default で制御します) 、
* 1 - すべての推論された型が `Nullable` になります、
* 2 または `auto` - 推論された型は、スキーマ推論中に解析されるサンプル内でカラムに `NULL` が含まれている場合、またはファイルのメタデータにカラムの NULL 許容性に関する情報が含まれている場合にのみ `Nullable` になります、
* 3 - フォーマットが対応している場合 (例: Parquet) は、推論された型の NULL 許容性はファイルのメタデータに従います。それ以外の場合 (例: CSV) は常に `Nullable` になります。

<div id="schema_inference_make_json_columns_nullable">
  ## schema\_inference\_make\_json\_columns\_nullable
</div>

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

スキーマ推論時に、推論された JSON 型を `Nullable` にするかどうかを制御します。
この設定を schema\_inference\_make\_columns\_nullable とあわせて有効にすると、推論された JSON 型は `Nullable` になります。

<div id="schema_inference_mode">
  ## schema\_inference\_mode
</div>

<SettingsInfoBlock type="SchemaInferenceMode" default_value="default" />

スキーマ推論のモードです。'default' - すべてのファイルが同じスキーマを持つとみなし、任意のファイルからスキーマを推論できます。'union' - ファイルごとに異なるスキーマを持つことができ、結果のスキーマはすべてのファイルのスキーマのユニオンになります

<div id="show_create_query_identifier_quoting_rule">
  ## show\_create\_query\_identifier\_quoting\_rule
</div>

<SettingsInfoBlock type="IdentifierQuotingRule" default_value="when_necessary" />

SHOW CREATE クエリ内の識別子の引用符付けルールを設定します

<div id="show_create_query_identifier_quoting_style">
  ## show\_create\_query\_identifier\_quoting\_style
</div>

<SettingsInfoBlock type="IdentifierQuotingStyle" default_value="Backticks" />

SHOW CREATE クエリにおける識別子のクォートスタイルを設定します

<div id="type_json_allow_duplicated_key_with_literal_and_nested_object">
  ## type\_json\_allow\_duplicated\_key\_with\_literal\_and\_nested\_object
</div>

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

有効にすると、`{"a" : 42, "a" : {"b" : 42}}` のような、一部のキーが重複していても、そのうちの一方がネストされたオブジェクトである JSON をパースできるようになります。

<div id="type_json_skip_duplicated_paths">
  ## type\_json\_skip\_duplicated\_paths
</div>

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

有効にすると、JSONオブジェクトを JSON type にパースする際、重複したパスは無視され、例外を発生させる代わりに最初のものだけが挿入されます

<div id="type_json_skip_invalid_typed_paths">
  ## type\_json\_skip\_invalid\_typed\_paths
</div>

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

有効にすると、型付きパスを持つ JSON type のカラムで、JSON の値を宣言された型に変換できないフィールドは、エラーをスローする代わりにスキップされます。スキップされたフィールドは欠落しているものとして扱われ、型付きパスの定義に応じてデフォルト値または NULL 値が使用されます。

この設定は、特定のパスに型が宣言されている JSON type のカラム (例: JSON(a Int64, b String)) にのみ適用されます。通常の型付きカラムに insert する場合の JSONEachRow など、通常の JSON input formats には適用されません。

設定可能な値:

* 0 — 無効 (型が一致しない場合はエラーをスロー) 。
* 1 — 有効 (型が一致しない場合はフィールドをスキップ) 。

<div id="type_json_use_partial_match_to_skip_paths_by_regexp">
  ## type\_json\_use\_partial\_match\_to\_skip\_paths\_by\_regexp
</div>

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

有効にすると、JSON object を JSON type にパースする際、SKIP REGEXP で指定した正規表現は、パスをスキップするために部分一致が必要です。無効にすると、完全一致が必要です。

<div id="validate_experimental_and_suspicious_types_inside_nested_types">
  ## validate\_experimental\_and\_suspicious\_types\_inside\_nested\_types
</div>

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

Array/Map/Tuple のようなネストされた型の内部で、実験的な型や疑わしい型の使用を検証します
