如何 "ignore" 在 bigquery table 范围查询中缺少列?
How to "ignore" missing columns in a bigquery table range query?
我一次查询一系列 Bigquery table。但是,某些 table 可能没有特定的列。有没有办法告诉 Bigquery 将不存在的列视为空列,而不是得到一个 Field 'field_name' not found in table 错误?
如果您避免 "Select *" 并在 select 语句中定义所有特定列,它通常有效(只要检索的字段确实存在于所有指定的表中)。
另外,检查一下:
Union tables with different schema
一种解决方案是为旧表定义视图,它将列出所有列,并为新添加的列生成 NULL,即
SELECT a, b, c, CAST(NULL as STRING) d, CAST(NULL AS INTEGER) as e FROM T
我一次查询一系列 Bigquery table。但是,某些 table 可能没有特定的列。有没有办法告诉 Bigquery 将不存在的列视为空列,而不是得到一个 Field 'field_name' not found in table 错误?
如果您避免 "Select *" 并在 select 语句中定义所有特定列,它通常有效(只要检索的字段确实存在于所有指定的表中)。
另外,检查一下: Union tables with different schema
一种解决方案是为旧表定义视图,它将列出所有列,并为新添加的列生成 NULL,即
SELECT a, b, c, CAST(NULL as STRING) d, CAST(NULL AS INTEGER) as e FROM T