--- alias: [] description: 'Documentation for the JSONCompactEachRowWithNames format' input_format: true keywords: ['JSONCompactEachRowWithNames'] output_format: true slug: /interfaces/formats/JSONCompactEachRowWithNames title: 'JSONCompactEachRowWithNames' doc_type: 'reference' --- {/*AUTOGENERATED_START*/} | Input | Output | Alias | |-------|--------|-------| | ✔ | ✔ | | ## Description {#description} Differs from the [`JSONCompactEachRow`](/reference/formats/JSON/JSONCompactEachRow) format in that it also prints the header row with column names, similar to the [`TabSeparatedWithNames`](/reference/formats/TabSeparated/TabSeparatedWithNames) format. ## Example usage {#example-usage} ### Inserting data {#inserting-data} Using a JSON file with the following data, named as `football.json`: ```json ["date", "season", "home_team", "away_team", "home_team_goals", "away_team_goals"] ["2022-04-30", 2021, "Sutton United", "Bradford City", 1, 4] ["2022-04-30", 2021, "Swindon Town", "Barrow", 2, 1] ["2022-04-30", 2021, "Tranmere Rovers", "Oldham Athletic", 2, 0] ["2022-05-02", 2021, "Port Vale", "Newport County", 1, 2] ["2022-05-02", 2021, "Salford City", "Mansfield Town", 2, 2] ["2022-05-07", 2021, "Barrow", "Northampton Town", 1, 3] ["2022-05-07", 2021, "Bradford City", "Carlisle United", 2, 0] ["2022-05-07", 2021, "Bristol Rovers", "Scunthorpe United", 7, 0] ["2022-05-07", 2021, "Exeter City", "Port Vale", 0, 1] ["2022-05-07", 2021, "Harrogate Town A.F.C.", "Sutton United", 0, 2] ["2022-05-07", 2021, "Hartlepool United", "Colchester United", 0, 2] ["2022-05-07", 2021, "Leyton Orient", "Tranmere Rovers", 0, 1] ["2022-05-07", 2021, "Mansfield Town", "Forest Green Rovers", 2, 2] ["2022-05-07", 2021, "Newport County", "Rochdale", 0, 2] ["2022-05-07", 2021, "Oldham Athletic", "Crawley Town", 3, 3] ["2022-05-07", 2021, "Stevenage Borough", "Salford City", 4, 2] ["2022-05-07", 2021, "Walsall", "Swindon Town", 0, 3] ``` Insert the data: ```sql INSERT INTO football FROM INFILE 'football.json' FORMAT JSONCompactEachRowWithNames; ``` ### Reading data {#reading-data} Read data using the `JSONCompactEachRowWithNames` format: ```sql SELECT * FROM football FORMAT JSONCompactEachRowWithNames ``` The output will be in JSON format: ```json ["date", "season", "home_team", "away_team", "home_team_goals", "away_team_goals"] ["2022-04-30", 2021, "Sutton United", "Bradford City", 1, 4] ["2022-04-30", 2021, "Swindon Town", "Barrow", 2, 1] ["2022-04-30", 2021, "Tranmere Rovers", "Oldham Athletic", 2, 0] ["2022-05-02", 2021, "Port Vale", "Newport County", 1, 2] ["2022-05-02", 2021, "Salford City", "Mansfield Town", 2, 2] ["2022-05-07", 2021, "Barrow", "Northampton Town", 1, 3] ["2022-05-07", 2021, "Bradford City", "Carlisle United", 2, 0] ["2022-05-07", 2021, "Bristol Rovers", "Scunthorpe United", 7, 0] ["2022-05-07", 2021, "Exeter City", "Port Vale", 0, 1] ["2022-05-07", 2021, "Harrogate Town A.F.C.", "Sutton United", 0, 2] ["2022-05-07", 2021, "Hartlepool United", "Colchester United", 0, 2] ["2022-05-07", 2021, "Leyton Orient", "Tranmere Rovers", 0, 1] ["2022-05-07", 2021, "Mansfield Town", "Forest Green Rovers", 2, 2] ["2022-05-07", 2021, "Newport County", "Rochdale", 0, 2] ["2022-05-07", 2021, "Oldham Athletic", "Crawley Town", 3, 3] ["2022-05-07", 2021, "Stevenage Borough", "Salford City", 4, 2] ["2022-05-07", 2021, "Walsall", "Swindon Town", 0, 3] ``` ## Format settings {#format-settings} If setting [`input_format_with_names_use_header`](/reference/settings/formats/input-format#input_format_with_names_use_header) is set to 1, the columns from input data will be mapped to the columns from the table by their names, columns with unknown names will be skipped if setting [`input_format_skip_unknown_fields`](/reference/settings/formats/input-format#input_format_skip_unknown_fields) is set to 1. Otherwise, the first row will be skipped. {/*AUTOGENERATED_END*/}