Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

RowBinaryWithDefaults

入力 出力 エイリアス

説明

RowBinaryフォーマットに似ていますが、各カラムの前に、デフォルト値を使用するかどうかを示す追加の1バイトがあります。

使用例

例:

Querysql
SELECT * FROM FORMAT('RowBinaryWithDefaults', 'x UInt32 default 42, y UInt32', x'010001000000')
Responseresponse
┌──x─┬─y─┐
│ 42 │ 1 │
└────┴───┘
  • カラム x では、デフォルト値を使用することを示す 1 バイト 01 のみがあり、このバイトの後ろにはほかのデータはありません。
  • カラム y では、データはバイト 00 で始まり、これはそのカラムが実際の値を持ち、後続のデータ `01000000`` から読み取る必要があることを示します。

フォーマット設定

以下の設定は、すべての RowBinary 系フォーマットに共通です。

設定 説明 デフォルト
format_binary_max_string_size RowBinary フォーマットで許可される String の最大サイズです。 1GiB
output_format_binary_encode_types_in_binary_format RowBinaryWithNamesAndTypes 出力フォーマットで、ヘッダー内の型を、型名の文字列ではなく binary encoding を使って書き込めるようにします。 false
input_format_binary_decode_types_in_binary_format RowBinaryWithNamesAndTypes 入力フォーマットで、ヘッダー内の型を、型名の文字列ではなく binary encoding を使って読み取れるようにします。 false
output_format_binary_write_json_as_string RowBinary 出力フォーマットで、JSON データ型の値を JSON String 値として書き込めるようにします。 false
input_format_binary_read_json_as_string RowBinary 入力フォーマットで、JSON データ型の値を JSON String 値として読み取れるようにします。 false
Navigation