Bigquery:获取表名称作为列值

时间:2019-03-20 10:47:05

标签: sql google-bigquery

我有一个数据集,其中包含几个表的名称带有后缀:

  • table_src1_serie1
  • table_src1_serie2
  • table_src2_opt1
  • table_src2_opt2
  • table_src3_type1_v1
  • table_src3_type2_v1
  • table_src3_type2_v2

我知道我可以在BQ中使用这种类型的查询:

select * from `project.dataset.table_*`

从这些不同的表中获取所有行。

我要实现的目标是创建一个包含例如源类型(src1,src2,src3)的列

1 个答案:

答案 0 :(得分:2)

假设所有表的架构都相同-您可以将以下内容添加到选择列表中(对于BigQuery Standard SQL)

SPLIT(_TABLE_SUFFIX, '_')[SAFE_OFFSET(0)] AS src