此查询:
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.
这是一个错误还是我做错了什么?
答案 0 :(得分:8)
请参阅https://developers.google.com/bigquery/query-reference#flatten
首先,您需要给FLATTEN
一个重复的字段以展平。 payload
不再重复。 payload.pages
是。其次,{select}语句中的payload.pages
不是叶子字段,而是嵌套/重复的字段。因此,您将其切换为使用payload.pages.*
所以你的查询将成为:
SELECT payload.pages.*
FROM FLATTEN([publicdata:samples.github_nested] , payload.pages)
ORDER BY created_at
LIMIT 1000