我想读一个由逗号分隔(,
)的CSV文件,但要忽略双引号(""
)中的逗号。我想将结果存储到表中。
示例:
abc,00.000.00.00,00:00:00:00:00:00,Sun Nov 01 00:00:00 EST 0000,Sun Nov 01 00:00:00 EST 0000,"Apple, Inc.",abcd-0000abc-a,abcd-abcd-a0000-00
在这里我不想在苹果上分开。
我知道Python中存在CSV读取器,我可以在Plpython中使用它,但是考虑到数百万此类字符串,这很慢!我想要纯PSQL方法!
这是使用CSV格式读取使用外部表的CSV文件的示例。
CREATE EXTERNAL TABLE ext_expenses ( name text,
date date, amount float4, category text, desc1 text )
LOCATION ('gpfdist://etlhost-1:8081/*.txt',
'gpfdist://etlhost-2:8082/*.txt')
FORMAT 'CSV' ( DELIMITER ',' )
LOG ERRORS SEGMENT REJECT LIMIT 5;
这也取自Greenplum文档。
http://gpdb.docs.pivotal.io/530/admin_guide/external/external/g-example-4-single-gpfdist-instance-instance-with-error-logging.html