현재 vertica 데이터베이스에서 작업하고 있습니다. 하나의 열에 정수 배열을 저장하는 중 문제가 있습니다. CSV를 통해 데이터 값을 가져 왔습니다.Vertica 데이터베이스에 정수 배열을 저장하려면 어떻게해야합니까?
테이블을 만들 때 다음 코드를 사용했습니다.
CREATE TABLE testing_table_1 (email varchar,name varchar,gen int,yob int,ct int,cy int,a varchar(65000),b varchar(65000),c varchar(65000));
다음 코드로 가져온 데이터입니다.
COPY testing_table_1 from '/home/naresh/Desktop/bigfile.csv' parser fcsvparser();
샘플 CSV 형식은 다음과 같습니다.
[email protected] | Donald Garcia | 2 | 2003 | 21947 | 91 | 241,127,225,68,162 | 4,84,63,69,15 | 32,44,15,31
[email protected] | Charles Brown | 2 | 2012 | 22218 | 45 | 127,156,186,136,242 | 49,69,14,80,95,1 | 39,36,38,40,20
7 번째, 8 번째 및 9 번째 열이 문자열 형식으로 저장됩니다. 하지만 원하는 것은 정수 형식의 배열로 저장되기를 원합니다.
문자열 형식 때문에 'IN'쿼리를 사용하여 정수 연산 조합을 수행 할 수 없습니다.
저는 vertica에서 플렉스 테이블 형식을 사용하고 싶지 않습니다. 플렉스 테이블 형식 이외의 제안을하십시오.
위의 문제에 대한 가능한 해결책을 제공해주십시오.
실수를 저지른 경우 제발 해결하십시오.
미리 감사드립니다.
그 컬럼의 데이터 유형은'VarChar', 물론 그것을 저장하는 것 문자열입니다. 그리고 afaik Vertica는 배열을 지원하지 않습니다. – dnoeth
정수 배열을 flex 테이블 형식으로 저장합니다. 다음 링크를 확인하십시오. https://my.vertica.com/docs/7.2.x/HTML/index.htm#Authoring/FlexTables/ComplexDataTypesForfavroparser.htm#Arrays –