2014-09-19 29 views
4

这个查询:BIGQUERY “不是叶场” 错误

SELECT payload.pages FROM FLATTEN([publicdata:samples.github_nested] , payload) 
ORDER BY created_at 
LIMIT 1000 

导致此错误:

Error: Field payload.pages from table publicdata:samples.github_nested is not a leaf field. 

这是一个bug或者还是我做错了什么?

回答

7

https://developers.google.com/bigquery/query-reference#flatten

首先,你需要给FLATTEN重复场扁平化。​​不重复。 payload.pages是。其次,在您的select语句中,payload.pages不是叶字段,它是嵌套/重复的。所以您切换为使用payload.pages.*

所以您的查询就会变成:

SELECT payload.pages.* 
FROM FLATTEN([publicdata:samples.github_nested] , payload.pages) 
ORDER BY created_at 
LIMIT 1000