有一个表,我们想要导出到客户通过JobConfigurationExtract到谷歌云存储使用Java。在与客户交换CSV信息时,我遇到了一个问题。客户被迫接收用逗号分隔的CSV文件。字符串字段应该始终有环绕引号。
我注意到,默认情况下,不添加引号。我还注意到,在查询资源管理器中,当其中一个数据值中存在分隔符时,将添加引号。
关于如何配置此作业的代码片段。
`Job exportJob = new Job(); JobConfiguration jobConfiguration = new JobConfiguration(); JobConfigurationExtract configurationExtract = new JobConfigurationExtract(); configurationExtract.setSourceTable(sourceTable); configurationExtract.setFieldDelimiter(","); configurationExtract.setPrintHeader(true); configurationExtract.setDestinationUri(destinationUri); //configurationExtract.setForcedQuotes(true) <=wish there was something like this. jobConfiguration.setExtract(configurationExtract); exportJob.setConfiguration(jobConfiguration); Bigquery bigquery = getBigQuery(); Job resultJob = bigquery.jobs().insert(projectId, exportJob).execute();`有没有办法做到这一点,而不做一个非常复杂的查询,连接引号周围的字符串?
发布于 2014-10-13 15:50:11
除了编写带有引号的字符串字段的查询之外,没有其他方法可以做到这一点。然而,这是一个合理的特性要求。您能在bigquery公共问题跟踪器(:https://code.google.com/p/google-bigquery/ )中将它作为一个特性请求提交吗?这样我们就可以对它进行优先级排序,并跟踪进度了吗?
https://stackoverflow.com/questions/26337923
复制相似问题