JSONCompactStringsEachRowWithNamesAndTypes 형식
JSONCompactStringsEachRowWithNamesAndTypes 형식
JSONCompactStringsEachRowWithNamesAndTypes 형식은 JSONCompactEachRow 형식과 달리 컬럼 이름과 타입이 있는 두 개의 헤더 행도 함께 출력해요(TabSeparatedWithNamesAndTypes와 유사해요). 모든 값은 문자열로 표현되며, 첫 행은 컬럼 이름, 두 번째 행은 컬럼 타입입니다.
출처: 문서
본문
| Input | Output | Alias |
|---|---|---|
| ✔ | ✔ |
설명 (Description)
JSONCompactEachRow 형식과 달리 이 형식은 컬럼 이름과 타입이 있는 두 개의 헤더 행도 함께 출력합니다(TabSeparatedWithNamesAndTypes와 유사).
사용 예시 (Example usage)
데이터 삽입 (Inserting data)
football.json이라는 이름의 JSON 파일에 다음 데이터가 있다고 가정해 볼게요:
["date", "season", "home_team", "away_team", "home_team_goals", "away_team_goals"]
["Date", "Int16", "LowCardinality(String)", "LowCardinality(String)", "Int8", "Int8"]
["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 INTO football FROM INFILE 'football.json' FORMAT JSONCompactStringsEachRowWithNamesAndTypes;
데이터 읽기 (Reading data)
JSONCompactStringsEachRowWithNamesAndTypes 형식을 사용하여 데이터를 읽습니다:
SELECT *
FROM football
FORMAT JSONCompactStringsEachRowWithNamesAndTypes
출력은 JSON 형식이 됩니다:
["date", "season", "home_team", "away_team", "home_team_goals", "away_team_goals"]
["Date", "Int16", "LowCardinality(String)", "LowCardinality(String)", "Int8", "Int8"]
["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)
input_format_with_names_use_header를 1로 설정하면 입력 데이터의 컬럼이 이름으로 테이블 컬럼에 매핑되고, 이름을 알 수 없는 컬럼은 input_format_skip_unknown_fields를 1로 설정하면 건너뜁니다. 그렇지 않으면 첫 번째 행이 건너뜁니다.
input_format_with_types_use_header를 1로 설정하면 입력 데이터의 타입이 테이블의 해당 컬럼 타입과 비교됩니다. 그렇지 않으면 두 번째 행이 건너뜁니다.