title_wip

Other BSON types are not supported. Additionally, it performs conversion between different integer types.
For example, it is possible to insert a BSON `int32` value into ClickHouse as [`UInt8`](/docs/sql-reference/data-types/int-uint).

Big integers and decimals such as `Int128`/`UInt128`/`Int256`/`UInt256`/`Decimal128`/`Decimal256` can be parsed from a BSON Binary value with the `\x00` binary subtype.
In this case, the format will validate that the size of the binary data equals the size of the expected value.

Note

This format does not work properly on Big-Endian platforms.

## Example usage[​](#example-usage "Direct link to Example usage")

### Inserting data[​](#inserting-data "Direct link to Inserting data")

Using a BSON file with the following data, named as `football.bson`:

```
    ┌───────date─┬─season─┬─home_team─────────────┬─away_team───────────┬─home_team_goals─┬─away_team_goals─┐
 1. │ 2022-04-30 │   2021 │ Sutton United         │ Bradford City       │               1 │               4 │
 2. │ 2022-04-30 │   2021 │ Swindon Town          │ Barrow              │               2 │               1 │
 3. │ 2022-04-30 │   2021 │ Tranmere Rovers       │ Oldham Athletic     │               2 │               0 │
 4. │ 2022-05-02 │   2021 │ Port Vale             │ Newport County      │               1 │               2 │
 5. │ 2022-05-02 │   2021 │ Salford City          │ Mansfield Town      │               2 │               2 │
 6. │ 2022-05-07 │   2021 │ Barrow                │ Northampton Town    │               1 │               3 │
 7. │ 2022-05-07 │   2021 │ Bradford City         │ Carlisle United     │               2 │               0 │
 8. │ 2022-05-07 │   2021 │ Bristol Rovers        │ Scunthorpe United   │               7 │               0 │
 9. │ 2022-05-07 │   2021 │ Exeter City           │ Port Vale           │               0 │               1 │
10. │ 2022-05-07 │   2021 │ Harrogate Town A.F.C. │ Sutton United       │               0 │               2 │
11. │ 2022-05-07 │   2021 │ Hartlepool United     │ Colchester United   │               0 │               2 │
12. │ 2022-05-07 │   2021 │ Leyton Orient         │ Tranmere Rovers     │               0 │               1 │
13. │ 2022-05-07 │   2021 │ Mansfield Town        │ Forest Green Rovers │               2 │               2 │
14. │ 2022-05-07 │   2021 │ Newport County        │ Rochdale            │               0 │               2 │
15. │ 2022-05-07 │   2021 │ Oldham Athletic       │ Crawley Town        │               3 │               3 │
16. │ 2022-05-07 │   2021 │ Stevenage Borough     │ Salford City        │               4 │               2 │
17. │ 2022-05-07 │   2021 │ Walsall               │ Swindon Town        │               0 │               3 │
    └────────────┴────────┴───────────────────────┴─────────────────────┴─────────────────┴─────────────────┘
```

Insert the data:

```
INSERT INTO football FROM INFILE 'football.bson' FORMAT BSONEachRow;
```

### Reading data[​](#reading-data "Direct link to Reading data")

Read data using the `BSONEachRow` format:

```
SELECT *
FROM football INTO OUTFILE 'docs_data/bson/football.bson'
FORMAT BSONEachRow
```

Tip

BSON is a binary format that does not display in a human-readable form on the terminal. Use the `INTO OUTFILE` to output BSON files.

## Format settings[​](#format-settings "Direct link to Format settings")

|  |  |  |  |  |  |  |  |  |
| --- | --- | --- | --- | --- | --- | --- | --- | --- |
| Setting Description Default|  |  |  |  |  |  | | --- | --- | --- | --- | --- | --- | | [`output_format_bson_string_as_string`](/docs/operations/settings/formats#output_format_bson_string_as_string) Use BSON String type instead of Binary for String columns. `false`| [`input_format_bson_skip_fields_with_unsupported_types_in_schema_inference`](/docs/operations/settings/formats#input_format_bson_skip_fields_with_unsupported_types_in_schema_inference) Allow skipping columns with unsupported types while schema inference for format BSONEachRow. `false` | | | | | | | | |

- [Description](#description)- [Data types matching](#data-types-matching)- [Example usage](#example-usage)
      - [Inserting data](#inserting-data)- [Reading data](#reading-data)- [Format settings](#format-settings)

Was this page helpful?