如果指定了嵌套结果(RECORD类型),则可以返回嵌套结果( noflatten_results类型),但可以只在屏幕上查看它们,而不必先将其写入表。
例如,下面是一个简单的user表(我的实际表很大(具有多层嵌套的400+col)。
ID,
name: {first, last}我想在我的应用程序中查看特定用户的记录和显示,所以我的查询是
SELECT * FROM dataset.user WHERE id=423421 limit 1可以直接返回结果吗?
发布于 2015-12-14 14:58:19
您应该使用noflatten_results选项将输出写入" temp“表(在使用表后将相应的过期设置为清除表),并将客户端从这个临时表中服务。所有的“飞行”
请记住,不管“临时”表有多小--如果您要查询它(在上面的第二步中),您至少会收到10 so的账单,所以您最好在这个步骤中使用Tabledata.list API (https://cloud.google.com/bigquery/docs/reference/v2/tabledata/list),这是免费的!
发布于 2015-12-14 07:22:30
因此,如果您试图获得重复记录,它将在接口/BQ控制台上失败,并出现错误:
Error: Cannot output multiple independently repeated fields at the same time.为了克服这个错误,你的输出就会变平。
https://stackoverflow.com/questions/34259495
复制相似问题