我在 Google 电子表格中查询了一个带有数据的联合表。按照第 720 期https://code.google.com/p/google-bigquery/issues/detail?id=720 中的建议, 我创建了以下代码:
Set<String> scopes = new HashSet<>();
scopes.add(BigqueryScopes.BIGQUERY);
scopes.add("https://www.googleapis.com/auth/drive");
scopes.add("https://www.googleapis.com/auth/spreadsheets");
final HttpTransport transport= new NetHttpTransport();
final JsonFactory jsonFactory= new JacksonFactory();
GoogleCredential credential = new GoogleCredential.Builder()
.setTransport(transport).setJsonFactory(jsonFactory)
.setServiceAccountId(GC_CREDENTIALS_ACCOUNT_EMAIL)
.setServiceAccountScopes(scopes)
.setServiceAccountPrivateKey(getPrivateKey())
.build();
String omgsql = "SELECT * FROM [<myproject>:<mydataset>.failures] LIMIT 1000";
JobReference jobIdomg = startQuery(bigquery, "<myproject>", omgsql);
// Poll for Query Results, return result output
Job completedJobomg = checkQueryResults(bigquery, "<myproject>", jobIdomg);
GetQueryResultsResponse queryResultomg = bigquery.jobs()
.getQueryResults(
"<myproject>", completedJobomg
.getJobReference()
.getJobId()
).execute();
List<TableRow> rowsomg = queryResultomg.getRows(); …Run Code Online (Sandbox Code Playgroud)