メインコンテンツへスキップ
メインコンテンツへスキップ

RowBinaryWithDefaults

入力出力エイリアス

説明

RowBinary 形式と似ていますが、各列の前に 1 バイトが追加され、そのバイトでデフォルト値を使用するかどうかを示します。

使用例

例:

SELECT * FROM FORMAT('RowBinaryWithDefaults', 'x UInt32 default 42, y UInt32', x'010001000000')
┌──x─┬─y─┐
│ 42 │ 1 │
└────┴───┘
  • x には、デフォルト値を使用すべきことを示す 1 バイトの 01 だけがあり、このバイト以降には一切データがありません。
  • y では、データはバイト 00 から始まっており、これは列に実際の値が存在し、その値を後続のデータ 01000000 から読み取る必要があることを示します。

フォーマット設定

The following settings are common to all RowBinary type formats.

SettingDescriptionDefault
format_binary_max_string_sizeRowBinary フォーマットにおける String の最大許容サイズ。1GiB
output_format_binary_encode_types_in_binary_formatRowBinaryWithNamesAndTypes 出力フォーマットで、ヘッダー内の型を型名の文字列ではなく、binary encoding を用いたバイナリ表現で書き出すことを許可します。false
input_format_binary_decode_types_in_binary_formatRowBinaryWithNamesAndTypes 入力フォーマットで、ヘッダー内の型を型名の文字列ではなく、binary encoding を用いたバイナリ表現として読み取ることを許可します。false
output_format_binary_write_json_as_stringRowBinary 出力フォーマットで、JSON データ型の値を JSONString 値として書き出すことを許可します。false
input_format_binary_read_json_as_stringRowBinary 入力フォーマットで、JSON データ型の値を JSONString 値として読み取ることを許可します。false