2013-07-10 2 views
0

BigQuery API를 사용할 때 이상한 문제가 발생했습니다.데이터를 쿼리 할 때 헤더가 누락되었습니다.

우리는 Java API를 사용하여 특정 테이블의 모든 데이터를 선택합니다. "이름":

{ "F": [{ "V"우리는 우리 자신의 테이블에서이 프로그램을 실행할 때

QueryRequest request = new QueryRequest(); 
request.setQuery(statement); 
Query query = service.jobs().query(projectId, request); 
QueryResponse queryResp = query.execute(); 


// Poll until job complete.... 

// Job completed 
GetQueryResultsResponse queryResult = service.jobs().getQueryResults(
projectId, completedJobId).execute(); 
List<TableRow> rows = queryResult.getRows(); 

는 첫 번째 행은 헤더, 예를 들어 있습니다 : 우리는 다음과 같은 코드를 사용합니까 }, { "v": "Sex"}]}

그러나 다른 테이블을 사용하여 다른 계정에서 실행하면 헤더가 포함되지 않습니다. 첫 번째 행은 데이터의 첫 번째 행입니다. 첫 번째 행에 테이블 헤더가 있기를 기대하기 때문에 응용 프로그램에 문제가 발생합니다. 아무도 이것이 왜 일어나는지 설명 할 수 있습니까?

도움 주셔서 감사합니다. 쿼리 결과의

크리스

답변

2

첫 번째 행은 헤더 아니다 - 그것은 결과의 첫 번째 행입니다.

데이터를 가져올 때처럼 데이터의 첫 번째 행으로 가져온 헤더가있을 수 있습니다 (로드에서 skipLeadingRows 값을 사용하여 헤더 행을 건너 뛸 수 있음).

데이터에서 스키마를 가져 오려면 queryResult.getSchema() 함수에서 가져올 수 있습니다.

+0

감사합니다. – user2569097

관련 문제