我们正在将csv文件加载到BigQuery中.每个文件都将创建一个单独的表.
当我们从这些表中选择时,我们主要使用表查询liek这样做:
SELECT foo, bar
FROM TABLE_QUERY(name_stub,'table_id CONTAINS "_something" and msec_to_timestamp(creation_time) > date_add(current_timestamp(), -90, "day")'));
Run Code Online (Sandbox Code Playgroud)
现在我们已经为新文件添加了新字段.因此,我们现在还有"baz",而不仅仅是字段"foo"和"bar".
当我运行以下查询时,我得到错误,其中一个较旧的表上不存在字段"baz".
SELECT foo, bar, baz
FROM TABLE_QUERY(name_stub,'table_id CONTAINS "_something" and msec_to_timestamp(creation_time) > date_add(current_timestamp(), -90, "day")'));
Run Code Online (Sandbox Code Playgroud)
有没有办法选择"baz"并且只有没有列的表的默认值?
更新:此问题已得到解决。
BigQuery 现在支持表的 TABLE_DATE_RANGE,其中表的子集具有更广泛的架构。缺失的列在缺失该列的表中应显示为 NULL。
https://code.google.com/p/google-bigquery/issues/detail?id=439
| 归档时间: |
|
| 查看次数: |
271 次 |
| 最近记录: |