2016-07-07 3 views
1

테이블의 스키마를 빈 테이블에 복사하려고합니다. 그것은 어떤 중첩 된 레코드와 스키마에 대한 작동하지만이 쿼리를 통해 여러 중첩 된 기록이있는 스키마를 복사하려고하면여러 중첩 레코드가있는 BigQuery 테이블 쿼리

Cannot output multiple independently repeated fields at the same time.

답변

3

BigQuery를 자동으로 모든 평평하게됩니다

SELECT * FROM [table] LIMIT 0 

나는 다음과 같은 오류가 결과 (see docs)는 하나 이상의 중첩 된 레코드가있을 때 작동하지 않습니다. BigQuery의 UI에서 옵션 표시 클릭 :

enter image description here

그런 다음 대상 테이블을 선택하고 확인 대형 결과이 선택되어 허용하고 펼치기는되지 않은입니다 결과 :

enter image description here

2

SELECT * FROM [table] LIMIT 0 with Allow Large Results and Unflatten Results

위의 접근법의 단점은 스키마를 복사하는 방식으로 전체 원본 테이블 스캔 비용이 부과되므로 사용자가 많은 비용을 지불해야한다는 것입니다.

대신 프로그래밍 방식 get /이 스키마를 다음 create tabletable schema 획득 할